Лучший способ добиться фильтрации данных в dplyr - PullRequest
0 голосов
/ 28 августа 2018

У меня есть данные обратной связи об Immigration.Services, их много строк, каждая строка имеет значение («удовлетворен», «Очень доволен» ..) и название страны. Я хочу сгруппировать сначала, чтобы получить количество стран, имеющих более 1 строки, затем я хочу получить количество «удовлетворенных», «неудовлетворенных» ... по странам, но только для стран, у которых больше строк обратной связи. Я добился этого, как показано ниже, но это дублирование, есть ли лучший способ добиться этого?

c <- subset(fd, !is.na(Immigration.Services)  ) %>%
group_by(Origin.Country)  %>%
tally() %>%
filter(n>1)  %>%
select(Origin.Country)

#code to select data for countries required
subset(fd, !is.na(Immigration.Services)  ) %>%
group_by(Origin.Country,Immigration.Services)  %>%
tally() %>%
filter(Origin.Country %in% c[["Origin.Country"]])

1 Ответ

0 голосов
/ 29 августа 2018
c <- subset(fd, !is.na(Immigration.Services)  ) %>%
group_by(Origin.Country)  %>%
tally() %>%
filter(n>1)  %>%
group_by(Origin.Country,Immigration.Services)  %>%
tally()

Улучшает ли это вещи?

...