根据列值将列拆分为多个列

时间:2016-05-12 17:30:42

标签: r dataframe split

如何根据第1列中的值将具有2列的数据帧拆分为具有多列的数据框?例如:

ssh

应该成为:

n value
1 53
1 12
1 26
1 10
2 3
2 16
2 18
2 24

生成的列名称并不重要。对于n = 1,n = 2等,总会有相同的行数。

1 个答案:

答案 0 :(得分:2)

我们可以在splitn上调用数据框:

do.call('data.frame', split(df, df$n))
#  X1.n X1.value X2.n X2.value
#1    1       53    2        3
#2    1       12    2       16
#3    1       26    2       18
#4    1       10    2       24

#Or as @Imo added
data.frame(split(df, df$n))