R:强制转换字符列而不进行聚合

时间:2019-01-07 13:02:40

标签: r reshape2

我想从

转置此数据帧
Cat Group Rank 
229    A     1
229    C     2
230    B     1
230    E     2
231    F     1
231    D     2
..   ..    ..

并使它看起来像

Cat    1     2 
229    A     C
230    B     E
231    F     D
 ..    ..    ..

我使用了dcast中的reshape2

Table<- dcast(Table, Cat ~ Rank , value.var = 'Group')

但是执行时得到以下信息: Aggregation function missing: defaulting to length

,数据框转换为

Cat    1     2 
229    1     1
230    1     1
231    1     1
 ..    ..    ..

任何想法我该如何解决?

1 个答案:

答案 0 :(得分:1)

We can create a sequence column for the duplicates and it should work

library(data.table)
dcast(setDT(Rank2), Cat + rowid(Rank) ~ Rank, value.var = 'Group')