выбрать несколько столбцов с помощью checkboxGroupInput в R блестящий - PullRequest
0 голосов
/ 25 июня 2018

У меня есть вопрос о том, как выбрать несколько столбцов в моем наборе данных с помощью checkboxGroupInput в R блестящий.

Теперь у моего набора данных есть столбец, подобный следующему: (шаблон - имя_состояния / номер / число)

INDIVIDUALNAME

SA / 111111/222222

VIC / 33333/444444

NSW / 55555/666666

QLD / 777777/888888

.....

и у меня есть окно выбора, которое работает хорошо. Я использую grepl для извлечения названия штата и могу успешно выбирать индивидуальное состояние.

UI:

        selectInput("select_state", h3("Select State"),
                choices = list("All States"="SA|VIC|NSW|QLD|WA|TAS|NT|ACT|CTH","South Australia"="SA",
                               "Victoria"="VIC","New South Wales"="NSW","Queensland"="QLD",
                               "Western Australia"="WA","Northern Territory"="NT","Tasmania"="TAS",
                               "Australian Capital Territory"="ACT","Commonwealth"="CTH")),

Сервер:

entities_state <- entities[ with(entities, grepl(input$select_state, c(entities$IndividualName))), ]

Теперь я хочу изменить поле выбора на группу флажков, я знаю, что использовать группу флажков, мы можем написать

entities_state <-filter(entities, IndividualName %in% input$select_state)

но мне все еще нужно извлечь ключевое слово stateName из столбца «IndividualName». Я не знаю, как объединить grepl, filter и% n%, чтобы группа флажков работала.

Надеюсь, я ясно выразил свою проблему. Если нет, пожалуйста, дайте мне знать.

1 Ответ

0 голосов
/ 25 июня 2018

pattern для grepl можно сделать с помощью paste и collapse с |, чтобы он проверил любой из вариантов, выбранных с помощью select_state

i1 <- grepl(paste(input$select_state, collapse="|"), entities$IndividualName)
library(dplyr)
entities %>%
           filter(i1)

или мы можем создать его в filter

entities %>% 
         filter(grepl(paste(input$select_state, collapse="|"), IndividualName))
...