【问题标题】:How to sum one variable group by two variables?? R language [duplicate]如何将一个变量组与两个变量相加? R语言[重复]
【发布时间】:2013-08-16 03:40:07
【问题描述】:

我有一个数据框:

    Date   area    sales

1     201204   shanghai    23

2     201204 beijing     25

3     201204 beijing     16

4     201205 shanghai    55

5     201205 beijing     17

6     201205 shanghai    16

我要输出的表格如下:

Date   shanghai  beijing 

201204  23        41

201205  71        17

我将如何在 R 中做到这一点?谢谢!

【问题讨论】:

    标签: r sum


    【解决方案1】:

    两个选项,一个带有基本函数 aggregate,另一个带有 plyr 的 ddply。我自己编造了数据,因为您的数据不可重现,但您应该能够明白这一点:

    dat <- data.frame(x1 = sample(letters[1:3], 100, TRUE),
                      x2 = sample(letters[6:3], 100, TRUE),
                      value = rnorm(100))
    
    aggregate(value ~ x1 + x2, data = dat, FUN = 'sum')
    
    library(plyr)
    ddply(dat, .(x1,x2), summarize, foo = sum(value))
    

    【讨论】:

    • 感谢您的回答!这种方式可能更容易和更有效:代码:xtabs(sales ~ Date + area, mydf)
    猜你喜欢
    • 1970-01-01
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 2014-02-07
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 2021-12-11
    相关资源
    最近更新 更多