R 闪亮服务器问题 - 反应性全球环境

R shiny sever problems - reactive global environment

这是我第一次创建网络应用程序。我在闪亮服务器下对数据进行子集化时遇到了一些问题。这是一个大数据集。我想根据我们在 UI 中输入的条件对数据进行子集化。但是我失败了。

显示"Error in eval: attempt to apply non-function"。有人可以帮我吗?太感谢了。我的最终目标是构建应用程序以通过大型数据集对数据进行子集化,并对子集应用计算。最后,通过闪亮的应用程序展示结果。

我把计算过程和UI编码了。我怎样才能结合这些?我们必须在服务器下编写所有代码吗?我可以在全局环境下放置一些代码吗?全局环境会和服务器有联系吗?谢谢。

附上我的代码图片。我怎样才能修改它以使其工作?谢谢!!!!!

 server <- function(input,output){
 sex <- reactive({sex <- input$sex})
 impairment <- reactive({impairment <- input$impairment})
 sub1<- reactive({subset(a2e,Sex == input$sex() & AVS.Impairment == 
 input$impairment() )})


 output$distPlot <- renderPlot(plot{sub1()$Age})

 }

 shinyApp(ui=ui,server=server)

我想根据性别和损伤对数据进行子集化。只是为了检查它是否有效,我选择在数据集中绘制随机列。但它没有用。请帮我。 :)

首先,我认为您不需要 sex <- reactive({sex <- input$sex}),因为您可以在其他反应中引用 input$sex。 (即使你这样做,它也可能只是 sex <- reactive(input$sex),但这看起来没有必要。不过也许我遗漏了什么。)

无论如何,我认为问题可能出在 sub1<- 行中的 input$sex()。您可能只需要 input$sex,或者如果出于某种原因您需要使用反应函数,那么 sex(),但在这里您似乎结合了这两个想法。与input$impairment()类似,它应该只是input$impairment