【发布时间】:2017-08-07 15:09:08
【问题描述】:
我有一个简单的 Shiny 应用程序,它可以抛出 Error:cannot coerce class "c("reactiveExpr", "reactive")" to a data.frame。我正在尝试根据用户选择的line 将名为positions 的data.frame 子集化为positions$LineCode。下面是我的代码。
library(shiny)
library(shinydashboard)
lines <- c('All','RD','YL','GR','BL','OR','SV')
ui <- dashboardPage(
dashboardHeader(title="Metro Positions"),
dashboardSidebar(
sidebarMenu(
selectInput('line', 'Select Line:', lines)
)
),
dashboardBody(
tableOutput('positionstable')
)
)
positions <- read.csv('positions.csv')
server <- function(input, output, session) {
pos <- reactive({
if(input$line!='All'){
pos <- positions[positions$LineCode==input$line,]
}
return(pos)
})
output$positionstable <- renderTable(pos())
}
shinyApp(ui, server)
【问题讨论】:
-
应该是
input$lines? -
不,
selectInput的名字是'line'。