Kai*_*zen 3 r dataframe dplyr tibble
我有一个大数据框,如果基于此数据框中的列的给定组的行数小于给定数字,我想删除所有行。下面是一个例子:
x=1:6; y=c("A","B","B","B","C","C")
df<- data.frame(x,y)
Run Code Online (Sandbox Code Playgroud)
如果我按变量 y 分组,我有三行属于“B”组。在这里,我想删除所有不满足此条件的行(<3 行)。预期输出:
df
x y
1 2 B
2 3 B
3 4 B
Run Code Online (Sandbox Code Playgroud)
是否有捷径可寻?
我们可以使用dplyr::filter()和计算每组中的行数dplyr::n()
library(dplyr)
df %>%
group_by(y) %>%
filter(n()>2)
Run Code Online (Sandbox Code Playgroud)