问题描述
我正在努力通过类似 vlookup 的解决方案(即级联下拉列表)在 RShiny 中逐行填充我的闪亮表。我需要通过在 drodpdown 上选择区域来填充 NA,并且管理器将自动填充。我有主集和查找集,mainData 和 lupData 如下
mainData:
一点点:15 x 5
中心日期销售区域经理
1 东购物中心 1/1/2021 50 NA NA
2 西购物中心 1/1/2021 20 NA NA
3 西购物中心 1/1/2021 10 NA NA
4 东购物中心 1/2/2021 15 NA NA
5 东购物中心 1/2/2021 40 NA NA
6 西购物中心 1/2/2021 20 NA NA
7 西购物中心 1/3/2021 15 NA NA
8 东购物中心 1/4/2021 5 NA NA
9 东购物中心 1/4/2021 60 NA NA
10 南购物中心 1/5/2021 66 NA NA
11 南购物中心 1/6/2021 44 NA NA
12 南购物中心 1/7/2021 3 NA NA
13 西购物中心 1/5/2021 75 NA NA
14 西购物中心 1/6/2021 14 NA NA
15 东购物中心 1/7/2021 8 NA NA
lupData:
一点点:3 x 2
区域经理
1 东姆索利西
2 西汤姆
3 南菲拉尼
我想在阅读销售来自哪个购物中心(即第一列)之后添加区域下拉菜单,并让经理选择我认为/决定特定购物中心来自的区域。请参考我的代码片段,我在下拉列表中得到的输出似乎没有显示所需的“管理器”功能链接点击:
library(shiny)
library(rhandsontable)
ui <- fluidPage(
p(),rHandsontableOutput("hot",width = "100%",height = "100%")
)
server = function(input,output,session){
DF <- data.frame("centre" = as.factor(c("east shopping mall","west shopping mall","east shopping mall","south shopping mall","east shopping mall")),"date" = as.Date(c("1/1/2021","1/1/2021","1/2/2021","1/3/2021","1/4/2021","1/9/2021","1/11/2021","1/5/2021","1/6/2021","1/7/2021")),"sales" = as.integer(c(50,20,10,15,40,5,60,66,44,3,75,14,8)),#my dropdown column region (must also populate manager)
"region"= rep(as.factor(c("East","West","South")),length = length(c(50,8)))#i.e. max rows on the main table,"manager"= rep(as.factor(c("Mxolisi","Tom","Jerry")),8)))
)
values <- reactiveValues(data = DF)
observe({
if(!is.null(input$hot)){
values$data <- as.data.frame(hot_to_r(input$hot))
}
})
output$hot <- renderRHandsontable({
myTable <- rhandsontable(values$data,width = 1750,height = 5500,selectCallback = TRUE) %>%
hot_table(highlightCol = TRUE,highlightRow = TRUE,stretchH = "all") %>%
hot_col(col = "region",type = "dropdown",source = NULL,readOnly = TRUE,allowInvalid = FALSE)
if(!is.null(input$hot_select$select$r) ){
myTable <- hot_col(myTable,col = "region",source = values$DF$region[input$hot_select$select$r],readOnly = T)%>%
hot_cell(input$hot_select$select$r,readOnly = FALSE)
}
myTable
})
}
shinyApp(ui,server)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)