【问题标题】:Dplyr filter, select input, with select all condition for ShinyDplyr 过滤器,选择输入,并为 Shiny 选择所有条件
【发布时间】:2018-10-15 08:35:11
【问题描述】:

我将市场列下的每个唯一值保存到一个变量中,该变量保存为下拉菜单的选项。当观众选择闪亮的市场时,她/他将看到过滤到所选市场的数据。我正在尝试将一个空白选项合并到我的 dplyr 表达式中,以允许查看者查看整个数据集,而无需按市场进行任何过滤。然而,我构建闪亮应用程序的方式似乎需要选择一个市场才能使其正常工作。

我很好奇是否有更简单的方法来添加空白选项,这样如果查看者根本不想按市场过滤,它会显示整个 df?

下面的代码显示了我到目前为止所拥有的。

market_choices <- c("north","south","east","west")

selectInput(inputId = "mkt", 
            label = "Select Market", 
            choices = market_choices, 
            selected = "east"))

  test <- reactive({df %>% filter(Market == input$mkt)})

【问题讨论】:

    标签: r filter shiny dplyr


    【解决方案1】:

    您可以在market_choices 中包含all 选项,然后将过滤器表达式放入条件语句中:

    market_choices <- c("north","south","east","west", 'all')
    ...
    test <- reactive({if(input$mkt == 'all') {
                          df
                      } else {
                          df %>% filter(Market == input$mkt)
                      }})
    

    【讨论】:

    • 谢谢你。我想太多了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-03
    • 1970-01-01
    • 2013-08-07
    • 2018-08-21
    • 1970-01-01
    相关资源
    最近更新 更多