用户选择"全部",没有任何传递给过滤器

时间:2016-03-27 15:33:40

标签: r shiny dplyr

我正在创建一个包含下拉列表的闪亮应用。用户有几个选择。然后将它们用于过滤器,如下所示。

filteredData <- reactive({

data %>% 
  filter(Month >= input$months[1],
         Month <= input$months[2],
         Location.ID == input$loc,
         )
})

我想添加&#34; All&#34;在与输入$ loc相关联的下拉列表中,然后不希望将任何内容传递给过滤器。

我不确定我需要传递给过滤器,所以它不会做任何事情。我试过NULL,但它似乎没有用。

1 个答案:

答案 0 :(得分:1)

您可以将两个filter函数分开。

filteredData <- reactive({
    DF <- data %>% 
      filter(Month >= input$months[1],
            Month <= input$months[2])
    if(input$loc == "All") {
       DF 
    } else {
       DF %>% filter(Location.ID == input$loc)
    }
})