【发布时间】:2020-02-12 02:42:48
【问题描述】:
目前我正在尝试以下操作:在 Rshiny 中导入一个文件,给它一个数字(交互式),然后继续下一个文件。这部分工作正常。但是,我还想存储每次迭代的数据,然后将其显示在用户界面上。 但是,它不起作用。所以我猜反应性有些不对劲,但我不知道如何解决它。
ui<-fluidPage(
mainPanel(
radioButtons(inputId="score",label="Give a score",choices=c(1:9),selected=1),
actionButton(inputId="new","Next file"),
tableOutput("savdat")
)
)
server<-function(input,output){
NoFiles<-length(list.files())
这里是一个空的响应式 data.frame
outputdata<-reactive(data.frame("file"="file","score"="score"))
filename<-eventReactive(input$new,{
WhichFile<-sample(1:NoFiles,1)
filename<-list.files()[WhichFile]
return(filename)
})
scores<-eventReactive(input$new,{
return(input$score)
})
然后我想用新值附加输出数据的先前值。但它不起作用
outputdata<-eventReactive(input$new,{
rbind(outputdata(),filename(),scores())
})
output$savdat<-renderTable(outputdata())
}
shinyApp(ui, server)
欢迎任何建议
【问题讨论】:
标签: r dataframe shiny reactive-programming