[英]R shiny load data.frame for selectInput
我正在尝试编写一个加载多个数据框的闪亮应用程序。 我的绘图的数据框都工作得很好,但是我想用作下拉菜单中选项列表的一个 data.frame 没有加载。 如果我在 R 会话中单独加载框架,一切正常,但如果我只运行闪亮的应用程序,选择器将不会更新。
library(shiny)
ui <- fluidPage(
#...
selectInput("mats", "Text",
selectors)
# ...
)
server <- function(input, output){
# ...
df1=read.csv("./data/file.csv", sep=";", head=T, stringsAsFactors = F)
df1$choices=as.character(df1$choices)
selectors=c("All", df1$choices)
#...
}
shinyApp(ui = ui, server = server)
我想,我需要服务器功能中的选择器,所以我将数据框与其他数据框一起加载到那里。 那是正确的地方吗,我需要做什么才能让它运行?
最好的事物
您的代码存在许多问题:
selectInput
choices
应该是一个列表。ui
和server
可用的元素,请考虑阅读有关 Shiny 中作用域规则的链接文章,并在global.R
定义你的对象。 关于第一点,如果您打算使用data.frame
列作为菜单选择的基础,您可以应用以下转换:
my_new_list <- split(df$id, df$subject)
正如@user3710546对我过去问过的类似问题的回答所提供的那样。
请考虑查看关于在R 中制作可重现示例的讨论。如果您想使用一些公开可用的数据重做您的示例,那么生成解决方案将很容易。 如果我理解正确的话,你想使用data.frame
列作为UI
元素的基础,这本身并不难。
.
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.