[英]R shiny reactive output not displaying
我有以下数据帧
df<-data.frame("A"<-c(1:5), 'B'<-c("a", 'b', 'c', 'd', 'e'))
names(df)<-c('A', "B")
我在R闪亮UI中创建了一个选择框,并且还为服务器编写了如下代码。
ui<- fluidPage(
selectInput(inputId = "input", label = "No of days elapsed", choices =
c(0:1000), selected = T, multiple =F
),mainPanel(verbatimTextOutput("Output1")))
server<-function(input, output){text<-reactive({number<-input$input
number<-as.numeric(number)
Y<-function(X){if(X<5){
A<-df[!df$A==X,]} else {A<-df[df$A==(X-3),]}
return (A)}
out1<-Y(number)
})
renderPrint({text()$B})
}
shinyApp(ui, server)
代码生成选择框框。 但是,当我使用该框并选择一个数字时,没有输出。 也没有出现错误。 我不确定我的错误在哪里
您的代码有一些问题:
verbatimTextOutput("Output1")
,但未定义output$Output1
。 verbatimTextOutput
,而您似乎想要输出表,因此您应该使用dataTableOutput
。 下面显示了一个工作示例。 希望这可以帮助!
Y<-function(X){if(X<5){
A<-df[!df$A==X,]} else {A<-df[df$A==(X-3),]}
return (A)}
df<-data.frame("A"<-c(1:5), 'B'<-c("a", 'b', 'c', 'd', 'e'))
names(df)<-c('A', "B")
ui<- fluidPage(
selectInput(inputId = "input", label = "No of days elapsed", choices =
c(0:1000), selected = T, multiple =F ),
mainPanel(dataTableOutput("Output1"))
)
server<-function(input, output){
text<-reactive({
number<-input$input
number<-as.numeric(number)
out1<-Y(number)
})
output$Output1 <- renderDataTable({text()})
}
shinyApp(ui, server)
这是我犯了错误的地方。
ui<- fluidPage(
selectInput(inputId = "input", label = "No of days elapsed", choices =
c(0:1000), selected = T, multiple =F
),mainPanel(verbatimTextOutput("Output1")))
server<-function(input, output){text<-reactive({number<-input$input
number<-as.numeric(number)
Y<-function(X){if(X<5){
A<-df[!df$A==X,]} else {A<-df[df$A==(X-3),]}
return (A)}
out1<-Y(number)
} )
**output$Output1<-renderPrint({text()$B})**
}
shinyApp(ui, server)
这产生了输出。 我没有正确分配输出
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.