在 dplyr 中实现过滤数据的更好方法
Better way to achieve filtering data in dplyr
我有关于 Immigration.Services 的反馈数据,它有很多行,每一行都有一个值("satisfied","Very satisfied"..)和国家名称。我想首先分组以获得超过 1 行的国家/地区数量,然后我想获得 "satisfied" , "distaisfied" ... 每个国家/地区的数量,但仅限于反馈行以上的国家/地区。我按照下面的代码实现了它,但这有一个重复,有没有更好的方法来实现这个?
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"]])
c <- subset(fd, !is.na(Immigration.Services) ) %>%
group_by(Origin.Country) %>%
tally() %>%
filter(n>1) %>%
group_by(Origin.Country,Immigration.Services) %>%
tally()
这会改善情况吗?
我有关于 Immigration.Services 的反馈数据,它有很多行,每一行都有一个值("satisfied","Very satisfied"..)和国家名称。我想首先分组以获得超过 1 行的国家/地区数量,然后我想获得 "satisfied" , "distaisfied" ... 每个国家/地区的数量,但仅限于反馈行以上的国家/地区。我按照下面的代码实现了它,但这有一个重复,有没有更好的方法来实现这个?
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"]])
c <- subset(fd, !is.na(Immigration.Services) ) %>%
group_by(Origin.Country) %>%
tally() %>%
filter(n>1) %>%
group_by(Origin.Country,Immigration.Services) %>%
tally()
这会改善情况吗?