r - R:检测重复行,并找出每个重复组的计数
问题描述
我想提取重复行之间的链接。我可以在一个数据框中找到重复的行,如
duplicated(df)
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE
[15] FALSE FALSE TRUE FALSE TRUE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE TRUE
[29] FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE
[43] FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE FALSE FALSE TRUE FALSE
[57] FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE
我想知道每个重复案例的数量,
我期望的是格式:
Row X --> Row Y, Row Z
即X、Y、Z重复,该组的个数为3。
解决方案
根据您拥有的列数,这可能是一个选项。不过,您需要加入所有列:
df <- data.frame(col1 = c(1, 1, 2, 3, 4, 5, 6),
col2 = c(1, 1, 2, 3, 4, 5, 6))
df <- data.frame(idx = 1:7, df)
df <- inner_join(df, df, by = c("col1" = "col1", "col2" = "col2"))
df <- df %>% filter(idx.y > idx.x)
df[, c("idx.x", "idx.y")]
推荐阅读
- python - 使用 python 脚本从 docker 合并 Yaml
- python - 使用实例属性和方法
- python - Python字典父子组织
- ruby - Github Actions 未能在 ubuntu-18.04.5 上安装 Libv8 gem
- crystal-lang - 如何在 Crystal 中读取一定数量的字符(而不是字节)?
- android - 使卡片完全可点击的颤动
- python - 为什么我在 Python 中的递归骑士代码只运行第一个堆栈?
- python - 如何使用可扩展选项卡和后续 POST 请求(CORS 问题)抓取数据
- python - 如何在kivy中将文本输入设置为int
- php - 注册表单 PHP 不将值插入数据库,只是重新加载页面