2017-04-04 69 views
0

我已經在論壇上看過,並且存在一些類似的問題,但每次都略有不同。所以我決定發佈一個新的。我無法弄清楚這一點。在r數據框中重構/堆疊具有重複ID的列

考慮我的這些數據

id score 
1 1  3 
2 1  6 
3 2  2 
4 2  4 
5 2  3 
6 3  9 
7 3  2 

而且我希望它看起來像這樣:

id  score 
1 1  3, 6 
2 2  2, 3, 4 
3 3  2, 9 

建議都非常歡迎!先謝謝你。

回答

1

aggregate()能做到這一點:

df <- read.table(header=TRUE, text= 
' id score 
1 1  3 
2 1  6 
3 2  2 
4 2  4 
5 2  3 
6 3  9 
7 3  2') 

aggregate(score ~ id, data=df, FUN=paste0) 
# > aggregate(score ~ id, data=df, FUN=paste0) 
# id score 
# 1 1 3, 6 
# 2 2 2, 4, 3 
# 3 3 9, 2