如何在 R 数据框中统计重复行的数目?
要统计 R 数据框中的重复行数,我们首先需要使用 setDT 将数据框转换为 data.table 对象,然后使用 Count 函数统计重复项。例如,如果我们有一个名为 df 的数据框,那么可以通过使用命令 setDT(df)[,list(Count=.N),names(df)] 统计重复行。
示例 1
考虑以下数据框 −
x1<−rpois(20,2) x2<−rpois(20,2) df1<−data.frame(x1,x2) df1
输出
x1 x2 1 4 3 2 3 3 3 3 0 4 3 0 5 2 0 6 2 0 7 0 4 8 1 1 9 4 3 10 0 1 11 3 2 12 5 3 13 1 1 14 3 2 15 1 3 16 2 2 17 3 1 18 1 1 19 5 1 20 3 1
正在加载 data.table 对象 −
示例
library(data.table)
查找重复行 −
示例
setDT(df1)[,list(Count=.N),names(df1)]
输出
x1 x2 Count 1: 4 3 2 2: 3 3 1 3: 3 0 2 4: 2 0 2 5: 0 4 1 6: 1 1 3 7: 0 1 1 8: 3 2 2 9: 5 3 1 10: 1 3 1 11: 2 2 1 12: 3 1 2 13: 5 1 1
示例 2
y1<−sample(0:2,20,replace=TRUE) y2<−sample(0:2,20,replace=TRUE) df2<−data.frame(y1,y2) df2
输出
y1 y2 1 2 1 2 2 2 3 0 0 4 2 2 5 0 2 6 2 2 7 1 0 8 0 2 9 1 0 10 2 1 11 1 2 12 0 2 13 1 0 14 0 0 15 2 1 16 1 1 17 0 0 18 0 1 19 2 1 20 2 0
查找重复行 −
示例
setDT(df2)[,list(Count=.N),names(df2)]
输出
y1 y2 Count 1: 2 1 4 2: 2 2 3 3: 0 0 3 4: 0 2 3 5: 1 0 3 6: 1 2 1 7: 1 1 1 8: 0 1 1 9: 2 0 1
广告