【发布时间】:2016-07-19 01:56:38
【问题描述】:
我有如下数据,我想将其转换为长格式。
id count a1 b1 c1 a2 b2 c2 a3 b3 c3 age
1 1 apple 2 3 orange 3 2 beer 2 1 50
1 2 orange 3 2 apple 2 2 beer 2 1 50
2 1 pear 3 2 apple 2 2 orange 2 2 45
[a1,b1,c1],[a2,b2,c2],[a3,b3,c3] 是具有指定 id 的人所面临的三个属性的集合,此人可能面临多项选择情况表示第 i 个选择情况。我想将其改回长格式,同时保留其他变量,如下所示:
id count a b c age
1 1 apple 2 3 50
1 1 orange 3 2 50
1 1 beer 2 1 50
1 2 orange 3 2 50
1 2 apple 2 2 50
1 2 beer 2 1 50
2 1 pear 3 2 45
2 1 apple 2 2 45
2 1 orange 2 2 45
我曾尝试使用以下命令进行 reshape,但对于在何处处理 timevar 和 times 感到困惑:
l <- reshape(df,
varying = df[,3:11],
v.names = c("a","b","c"),
timevar = "choice",
times = c("a","b","c"),
direction = "long")
使用上述命令,我无法得到我想要的结果,非常感谢任何帮助!
【问题讨论】:
标签: r data-manipulation