r - 如果重复超过 5 次,如何删除行?
问题描述
我真的很拼命地寻找答案。我只有一列具有重复的 ID。我想要这样的代码:
ID
a
a
a
a
a
b
b
b
b
b
因此,如果有 6 个 a,则应删除第 6 行。
解决方案
这里有几个选项。按“ID”列分组,slice
前 5 行(带有head
和row_number()
)
library(dplyr)
df1 %>%
group_by(ID) %>%
slice(head(row_number(), 5))
或 withfilter
创建基于row_number()
“ID”列分组后的逻辑表达式
df1 %>%
group_by(ID) %>%
filter(row_number() < 6)
推荐阅读
- ansible - Ansible yaml 锚点和 jinja2 模板
- windows - AzureAD 加入的计算机无法访问 Windows DNS 上的 DNS 主机 (A) 记录
- javascript - 自定义 onChange 事件
- docker - 如何使用 CLion 在 Docker 容器中编码/运行程序?
- entity-framework-core - Entity Framework Core Insert 不遵守默认值
- reactjs - 创建可用于 Vue 和 React 应用程序的动态页眉和页脚的最佳方法是什么?
- elasticsearch - serilog 解构 - 混合类型
- python - 递归函数:用python递归
- python - Python - 向用户显示游戏保存文件的推荐方式
- google-cloud-dataflow - PAssert 与字符串不匹配