gpt4 book ai didi

r - Shiny 的 renderUI selectInput 返回 NULL

转载 作者:行者123 更新时间:2023-12-04 16:48:23 25 4
gpt4 key购买 nike

我正在尝试使用一个 react 模型,其中一个输入影响多个输出,如 Shiny 的备忘单中所述。
我需要使用 renderUI,因为选择列表是动态呈现的(示例中未显示)
但是,在初始化期间 selectInput 返回 NULL 而不是默认值。在第一个 NULL 值之后,输入按预期工作。我是 Shiny 的新手,可能做错了什么。

更新:其他控件在初始化后意外地不仅返回 NULL,还返回 NA。

请参阅下面的代码。查看控制台输出,第一个输入返回 NULL。

Listening on http://127.0.0.1:6211
NULL
chr "1"
chr "2"
chr "1"




library(shiny)

runApp(list(

ui = bootstrapPage(
fluidPage( uiOutput('ui.A') )
),


server = function(input, output){

output$ui.A = renderUI({
selectInput("A", label = h4("input A"),
choices = list(A_1=1, A_2=2),
selected = 1)
})

A.r <- reactive({input$A })

observe({

A <- A.r()
str(A)

})

}))

最佳答案

Shiny 有一个名为 observeEvent 的函数我几乎总是用它来代替 observer .它基本上只在 react 值更改时运行一些代码,默认情况下它会忽略 NULL 值。所以这是使您的示例工作的代码(我所要做的就是将您的 observe({ 行更改为 observeEvent(A.r(), {

library(shiny)

runApp(list(

ui = bootstrapPage(
fluidPage( uiOutput('ui.A') )
),


server = function(input, output){

output$ui.A = renderUI({
selectInput("A", label = h4("input A"),
choices = list(A_1=1, A_2=2),
selected = 1)
})

A.r <- reactive({input$A })

observeEvent(A.r(), {

A <- A.r()
str(A)

})

}))

关于r - Shiny 的 renderUI selectInput 返回 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30378310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com