通过将单个列分散到多个列来转换R数据帧?

时间:2017-07-17 04:35:11

标签: r

我在R中有一个数据框如下

elif

如何将其转换为如下所示的结构

id  Var1    Var2
A   1       A1
A   2       A2
A   3       A3
A   4       A4
A   5       A5
B   1       B1
B   2       B2
B   3       B3

1 个答案:

答案 0 :(得分:0)

> library(data.table)
> dcast(setDT(Data), id~Var1, value.var=c('Var1', 'Var2'))
   id Var1.1_1 Var1.1_2 Var1.1_3 Var1.1_4 Var1.1_5 Var2_1 Var2_2 Var2_3 Var2_4 Var2_5
1:  A        1        2        3        4        5     A1     A2     A3     A4     A5
2:  B        1        2        3       NA       NA     B1     B2     B3     NA     NA