在闪亮的应用程序中,可以输入一个数字(numericInput)。一个方法应该确保如果数字等于1,它保持为1,但在所有其他情况下(x!= 1),变量必须设置为0。
server.r :中的
...
checkNumber=reactive({
if(!is.null(input$data)){
output$n_insertNumber<-renderUI({
if(!is.null(input$data)){
numericInput("number", "Number", value = 8)
}
})
x<-input$number
if (x!=1){x==0}
}
})
...
在 ui.r :
...
uiOutput("n_insertNumber"),
...
输出:
警告:if:参数长度为零
时出错
有人可以帮我找到解决方案吗?谢谢!
答案 0 :(得分:0)
在这个示例应用程序中,您可以输入一个带有numericInput
小部件的数字,然后进入服务器并在被动环境中进行测试。其结果为1
或0
,可通过Variable()
访问。
library(shiny)
ui <- shinyUI(fluidPage(
titlePanel("Example"),
sidebarLayout(
sidebarPanel(
numericInput("number", "Number", value = 8)
),
mainPanel(
verbatimTextOutput("n_insertNumber")
)
)
))
server <- shinyServer(function(input, output) {
Variable <- reactive({
ifelse(test = input$number == 1, yes = 1, no = 0)
})
output$n_insertNumber <- renderPrint({
Variable()
})
})
shinyApp(ui = ui, server = server)