r - 过滤满足 r 中每组条件的行
问题描述
我有一个大数据框,如果基于此数据框中的列的给定组的行数小于给定数字,我想删除所有行。这是一个例子:
x=1:6; y=c("A","B","B","B","C","C")
df<- data.frame(x,y)
如果我按变量 y 分组,我有三行属于组“B”。在这里,我想删除所有不满足此条件的行(<3 行)。预期输出:
df
x y
1 2 B
2 3 B
3 4 B
是否有捷径可寻?
解决方案
我们可以使用dplyr::filter()
并计算每组中的行数dplyr::n()
library(dplyr)
df %>%
group_by(y) %>%
filter(n()>2)
推荐阅读
- javascript - 使用 Javascript 更改 H1 标签的内容?
- database-design - 缓存帖子并阻止同一帖子两次发送给用户
- javascript - popper.js:如何在 v2 中迁移 Popper.Defaults.modifiers.computeStyle.gpuAcceleration?
- python - ResNet50 network in Keras functional API (python)
- python - 在列表中查找频率的代码。带有计数功能的第二个代码工作得很好,但是使用循环的第一个方法不起作用,为什么?
- javascript - 错误地调用了firestore快照之间的视图更改
- javascript - JavaScript - setter,但带有桶
- laravel - 如何在 Laravel 模型中将子密钥对合并到父密钥
- api - 如何从 Robot 框架测试用例中提取 [Documentation] 文本
- javascript - 如何在现有的 html 页面上添加 React Js