识别按多个变量分组的 data.frame 的唯一原始数据
Identify unique raws for a data.frame that is grouped by multiple variables
大家,
我一直在努力让它发挥作用。基本上,我有一个像下面这样的 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' 的 'grouped',对于每个子组,我想收集一些摘要(这就像 dplyr 包的想法)。在这种情况下,我想在每个子组中识别唯一的 'C4'。
我尝试了 dplyr 包,但它似乎不起作用:
dataMat1 <- group_by(dataMat, C1, C2, C3)
dataMat2 <- summerise(dataMat1, unique(C4))
dataMat2 仅包含列。如何使用 dplyr 或任何其他包获得我想要的输出?现在,我写了几个 for 循环以获得所需的输出。
谢谢!
在这种情况下,您可以只使用 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
大家,
我一直在努力让它发挥作用。基本上,我有一个像下面这样的 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' 的 'grouped',对于每个子组,我想收集一些摘要(这就像 dplyr 包的想法)。在这种情况下,我想在每个子组中识别唯一的 'C4'。
我尝试了 dplyr 包,但它似乎不起作用:
dataMat1 <- group_by(dataMat, C1, C2, C3)
dataMat2 <- summerise(dataMat1, unique(C4))
dataMat2 仅包含列。如何使用 dplyr 或任何其他包获得我想要的输出?现在,我写了几个 for 循环以获得所需的输出。
谢谢!
在这种情况下,您可以只使用 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