R使用dcast扩展数据帧

时间:2013-07-19 01:44:44

标签: r reshape reshape2

我有以下数据框:

z <- data.frame(
                item=letters[rep(24:26,2)],
                freq=c(4,3,2,4,4,1),
                id=rep(1:2,each=3)
               )

item freq id
x    4    1
y    3    1
z    2    1
x    4    2
y    4    2
z    1    2

每个id,item组合的数据框都是唯一的。

我会这样:

id x y z
 1 4 3 2
 2 4 4 1

这看起来像一个相当简单的转换,但我似乎无法让它工作。

以下是我的尝试(z是数据框的名称):

dcast(z,id ~ item,sum)

然后返回:

id x y z
1 1 1 1
2 2 2 2

我做错了什么?

1 个答案:

答案 0 :(得分:5)

我不确定你为什么要把“和”功能放在那里。试试这个:

> dcast(z, id ~ item, value.var="freq")
  id x y z
1  1 4 3 2
2  2 4 4 1