R:子集一组重复

时间:2014-03-22 05:03:09

标签: unique subset duplicate-detection


想象一下这是我的df

>df
gen A   B   C   D
M1  1   2   3   4
M1  8   6   5   3
M1  4   8   6   0
M1  8   5   6   3
M2  8   5   6   0
M2  0   2   8   6
M3  3   8   9   2
M3  8   9   5   6
M4  3   7   8   5
M4  5   6   3   2

这里,如何基于第一列来重复子集,例如

M1  1   2   3   4
M1  8   6   5   3
M1  4   8   6   0
M1  8   5   6   3

非常感谢

1 个答案:

答案 0 :(得分:0)

这会奏效。

> d
   gen A B C D
1  M1   1 2 3 4
2  M1   8 6 5 3
3  M1   4 8 6 0
4  M1   8 5 6 3
5  M2   8 5 6 0
6  M2   0 2 8 6
7  M3   3 8 9 2
8  M3   8 9 5 6
9  M4   3 7 8 5
10 M4   5 6 3 2
> subset(d, (gen %in% c("M1")))
   h gen A C D
1 M1   1 2 3 4
2 M1   8 6 5 3
3 M1   4 8 6 0
4 M1   8 5 6 3

以编程方式分组和循环:

for (i in unique(d$gen)) { print(subset(d, (gen %in% c(i)))) }