识别由多个变量分组的data.frame的唯一原始数据

时间:2015-06-07 22:39:08

标签: r dplyr

大家,

我一直试图让它发挥作用。基本上,我有一个data.frame,如下所示:

C1   C2   C3   C4   
a     aa  aaa  aaaa
a     bb  aaa  bbbb
b     aa  aaa  aaaa
b     aa  aaa  aaaa
b     bb  aaa  aaaa

我想要的输出是这样的:

C1    C2   C3   C4
a     aa   aaa  aaaa
a     bb   aaa  bbbb
b     aa   aaa  aaaa
b     bb   aaa  aaaa

基本上,我希望数据框首先由'C1','C2和'C3''分组',对于每个子组,我想收集一些摘要(这就像dplyr包的想法) 。在这种情况下,我想在每个子组中识别唯一的“C4”。

我尝试了dplyr包但它似乎不起作用:

dataMat1 <- group_by(dataMat, C1, C2, C3)
dataMat2 <- summerise(dataMat1, unique(C4))

dataMat2仅包含列。如何使用dplyr或任何其他软件包获得我想要的输出?现在,我写了几个for循环来获得所需的输出。

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以在此实例中使用unique

df %>% group_by(C1,C2,C3) %>% unique

#  C1 C2  C3   C4
#1  a aa aaa aaaa
#2  a bb aaa bbbb
#3  b aa aaa aaaa
#4  b bb aaa aaaa