我正在尝试构建一个简单的Shiny App,但无法让它工作。我想选择一个州,然后应用程序应该计算样本的平均值。测量臭氧水平。这是我的ui.R代码:
require(shiny)
fluidPage(pageWithSidebar(
headerPanel("Ozone Pollution"),
sidebarPanel(
h3('State'),selectInput("inputstate","Select State",state.name)),
mainPanel(
h3('Results'),verbatimTextOutput("res")
)
))
这是我的server.R程序:
require(dplyr)
library(shiny)
shinyServer(
function(input, output) {
stat_state<-reactive({filter(ozone_2015,State.Name==input$inputstate)})
output$res<- renderPrint({mean(stat_state$Sample.Measurement)})
}
)
任何提示?感谢.....
答案 0 :(得分:1)
虽然我无法复制您的数据集,因为我不知道臭氧来自哪里,但我认为您的问题是您不是指这样的“被动”对象:
stat_state()
一旦你创建了一个被动对象,除了被动值和输入$变量之外,你需要在变量的末尾用'()'来引用它。
以下是使用一些代码和不同数据集的示例。希望这会有所帮助。
require(shiny)
ui <-
fluidPage(pageWithSidebar(
headerPanel("Population"),
sidebarPanel(
h3('State'),selectInput("inputstate","Select State",state.name)),
mainPanel(
h3('Results'),verbatimTextOutput("res")
)
))
server <- function(input,output){
require(dplyr)
sample.data <- reactive({as.data.frame(state.x77)})
stat_state <- reactive({sample.data()[which(row.names(sample.data()) == input$inputstate),]})
output$res <- renderPrint({stat_state()$Population})
}
)
}
shinyApp(ui = ui, server = server)