2016-12-07 60 views
0

相同的ID我有以下的数据已经被排序的项创建额外列:与R中

Id Items 
1  a,b 
1  c 
2  c 
3  a,c 
3  d 
3  e 

我想重新格式化为以下格式:

Id Items1 Items2  Items3 
1  a,b  c 
2  c   
3  a,c  d   e 

我可以使用reshape来做到这一点?如果是,如何?

回答

2

我们可以使用dcast

library(data.table) 
dcast(setDT(df1), Id~paste0("Items", rowid(Id)), value.var = "Items", fill = "") 
# Id Items1 Items2 Items3 
#1: 1 a,b  c  
#2: 2  c    
#3: 3 a,c  d  e 
+0

出于某种原因,我的R具有与命令 “ROWID” 的问题。我可否知道是否有替代命令可以用来取代?谢谢 – tatami

+0

@tatami它是'data.table'的新版本。即'1.10.0'你能否更新你的data.table版本。 – akrun