不久前我才开始学习 Shiny。我想将y分配给(y1+y2+y3+y4)/4,并在其他地方称其为分配的y。
起初我尝试了 simple definition y=(input$y1+input$y2+input$y3+input$y4)/4
,但它不起作用。我也尝试了许多其他方法,但它们也不起作用。
因为在后面的计算中我会多次使用y(比如计算方差),但是每次使用(input$y1+input$y2+input$y3+input$y4)/4
都会很臃肿(yi,i可能会超过20)
我的部分代码如下,
shinyUI(fluidPage(
numericInput("y1", "y1:", sample(1:200,1), min = 1, max = 200)),
numericInput("y2", "y2:", sample(1:200,1), min = 1, max = 200)),
numericInput("y3", "y3:", sample(1:200,1), min = 1, max = 200)),
numericInput("y4", "y4:", sample(1:200,1), min = 1, max = 200))
))
shinyServer(function(input, output,session) {
output$y <- renderText({(input$y1+input$y2+input$y3+input$y4)/4})
})
我不知道是否有合适的解决方案。
您可以从输入创建自己的反应值
shinyServer(function(input, output,session) {
y <- reactive((input$y1+input$y2+input$y3+input$y4)/4)
output$y <- renderText(y())
})
你创建了一个反应值,你把它称为一个函数y()
而不是一个变量y
来获取它的当前值
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句