计算频率和从长到宽转换的更快的方法
我试图获得两个变量“周”和“id”的每个级别的计数。我希望结果有“id”作为行,“Week”作为列,并将其算作值。
到目前为止我尝试过的例子(尝试了许多其他事情,包括添加一个虚拟变量=1,然后fun.aggregate = sum在此之上):
library(plyr)
ddply(data, .(id), dcast, id ~ week, value_var = "id",
fun.aggregate = length, fill = 0, .parallel = TRUE)
但是,我肯定做错了什么,因为这个函数还没有完成。有更好的方法吗?
投入:
id week
1 1
1 2
1 3
1 1
2 3
产出:
1 2 3
1 2 1 1
2 0 0 1
largeQ
慕田峪7331174
守着星空守着你