【问题标题】:R dcast: How do I perform dcast value calculations?R dcast:如何执行 dcast 值计算?
【发布时间】:2017-01-17 16:17:36
【问题描述】:

我有一个大数据框,我用它运行这个:

dcast(mydata, People ~ Categories, value.var = "Answer Count", **sum**)

结果如下:

People  category1   category2
Marge   3,648   6,402
Homer   3,586   6,684
Bart    3,469   7,119
Lisa    4,045   6,758
Maggie  2,847   5,748

还有,这个:

dcast(mydata, People ~ Categories, value.var = "Answer Count", **length**)

做这个:

People  category1   category2
Marge   2,531   4,516
Homer   2,535   4,512
Bart    2,542   4,563
Lisa    2,501   4,488
Maggie  2,517   4,513

实际上,我想这样做:

dcast(mydata, People ~ Categories, value.var = "Answer Count", **sum / length / 6**)

并获取这些值:

People  category1   category2
Marge   0.240221256 0.236271036
Homer   0.235765943 0.246897163
Bart    0.227445581 0.260026298
Lisa    0.269558843 0.250965538
Maggie  0.188518077 0.212275648

我尝试将fun.aggregate 用作参数,但我不确定这是正确的路径,或者我不知道我在做什么。有人可以帮我解决这个问题吗? (旁注:这个样本有两个类别。真实数据有>40个。)

【问题讨论】:

    标签: r reshape2 dcast


    【解决方案1】:

    我们可以在fun.aggregate中使用匿名函数调用

    library(reshape2)
    dcast(mydata, People ~ Categories, 
       value.var = "Answer Count", fun.aggregate = function(x) sum(x)/length(x))
    

    【讨论】:

    • 我是如此接近。非常感谢阿克伦! :)
    猜你喜欢
    • 1970-01-01
    • 2020-11-15
    • 1970-01-01
    • 1970-01-01
    • 2017-06-29
    • 2017-06-15
    • 2017-07-11
    • 2013-10-04
    • 2016-05-02
    相关资源
    最近更新 更多