【问题标题】:How to sum values with multiple conditions per year in R如何在 R 中每年对具有多个条件的值求和
【发布时间】:2022-12-11 20:33:12
【问题描述】:

我每年都有来自不同地区的统计数据。原始数据结构如下:

   count region year
1      1      A 2011
2      2      A 2010
3      1      A 2009
4      5      A 2008
5      4      A 2007
6      2      B 2011
7      2      B 2010
8      1      B 2009
9      5      B 2008
10     3      B 2007
11     3      C 2011
12     3      C 2010
13     2      C 2009
14     1      C 2008
15     3      C 2007
16     4      D 2011
17     3      D 2010
18     2      D 2009
19     1      D 2008
20     4      D 2007

我现在需要合并(求和)每年仅针对区域 A 和 D 的值,并保留这些计算总和的列区域的值 A。输出应如下所示:

   count region year
1      5      A 2011
2      5      A 2010
3      3      A 2009
4      6      A 2008
5      8      A 2007
6      2      B 2011
7      2      B 2010
8      1      B 2009
9      5      B 2008
10     3      B 2007
11     3      C 2011
12     3      C 2010
13     2      C 2009
14     1      C 2008
15     3      C 2007

区域 B 和 C 的计数不应更改。我尝试过但从未收到所需的输出。有人有小费吗?我会很感激。

【问题讨论】:

    标签: r dataframe sum multiple-conditions


    【解决方案1】:

    我们可以replaceD到A,然后做一个group_bysum

    library(dplyr)
    df1 %>% group_by(region = replace(region, region == 'D', 'A'), year) %>% summarise(count = sum(count), .groups = 'drop')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-04
      • 2014-09-30
      • 1970-01-01
      • 2014-04-13
      • 1970-01-01
      • 2013-08-05
      • 1970-01-01
      相关资源
      最近更新 更多