R闪亮的选择输入反应性

Posted

技术标签:

【中文标题】R闪亮的选择输入反应性【英文标题】:R Shiny selectInput Reactivity 【发布时间】:2017-11-24 17:08:42 【问题描述】:

在我的 Shiny 应用程序中,我的 UI 中有一个名为 bob 的 selectInput,选项为“A”、“B”、“C”。

在我的服务器顶部(在其他任何东西之前)我有

observe(

bob_value <- reactive(

      if (input$bob == "A")
      bob_value <- "A"
       else if (input$bob == "B")
       bob_value <- "B"
       else if (input$bob == "C")
       bob_value <- "C"
        bob_value
                      )

        .............................

       )

其中的点表示大约一千万行代码和六行代码。

现在,一千万六行代码主要提到了几个大函数文件,其中一个参数是 alice。我想让 alice 对 bob_value 做出反应,这样我就可以在 UI 中更改 input$bob 并查看一千万行六行代码的输出的变化。所以我打算将所有爱丽丝设置为 bob_value(),但在我这样做之前我得到了错误:

== 中的错误:比较 (1) 仅适用于原子类型和列表类型

我将不胜感激。

【问题讨论】:

【参考方案1】:

我认为你应该使用: 爱丽丝

【讨论】:

谢谢,但这发生在我完全改变任何爱丽丝之前。很抱歉,我无法发布可重现的代码。 那么在你的用户界面中,bob 是向量还是列表? 它是一个向量。 (它的类型是 c("A", "B", "C")。那是一个向量,对吧?) 为什么不直接用 input$bob 把函数放进去,看来你做的很多余。在这里创建响应式对象没有意义吗?

以上是关于R闪亮的选择输入反应性的主要内容,如果未能解决你的问题,请参考以下文章

R中闪亮的反应选择输入

删除后如何将旧的反应输入存储在R闪亮中

R 用 updateSelectInput 反应闪亮

R 闪亮的反应单选按钮

如何在ui中使用使用反应函数作为输入的结果? -r 闪亮

闪亮的动态/条件过滤选择多个输入(selectizeInput,多个= TRUE)