【发布时间】:2020-01-21 21:53:51
【问题描述】:
我得到了以下df,现在有点卡住了:
df1
X1 X2 X3 X4
A 1 a x
A 2 a x
A 3 a y
B 1 b x
...
我正在尝试聚合 df,以便我有一个唯一值,如果 X4 相同,所以我想要这个:
df2
X1 X2 X3 X4
A 1,2 a x
A 3 a y
B 1 b x
...
我试过这个:
df2 <-aggregate(.~X1,df1,unique)
但它并没有真正起作用。 X2 也是一个数值,但我希望它像一个字符一样列出(将其转换为字符)。
有人可以帮忙吗?
【问题讨论】:
-
您可能需要
aggregate(.~ X1, df1, function(x) toString(unique(x))) -
或
aggregate(.~ X1 + X3 + X4, df1, function(x) toString(unique(x))) -
谢谢你已经解决了数值问题!但是有没有办法保证它只根据 X1 聚合 IF X4 都是一样的?
-
好的,它与
aggregate(.~ X1+X4, df1, function(x) toString(unique(x)))一起工作