我已经在论坛上看过并且有一些类似的问题,但每次都略有不同。所以我决定发一个新的。我无法解决这个问题。
考虑我有这些数据
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
建议非常欢迎!先感谢您。
答案 0 :(得分: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