如何在 R 数据框中查找按年份汇总的列?


为了在 R 数据框中查找按年份汇总的列,我们可以使用 aggregate 函数和 sum 函数。

例如,如果我们有一个名为 df 的数据框,其中包含一个年份列(例如 Year)和一个数值列(例如 Demand),那么我们可以使用以下命令找到按年份汇总的需求总量:

aggregate(df["Demand"],by=df["Year"],sum)

示例 1

以下代码片段创建一个示例数据框:

Open Compiler
Year<-sample(2001:2005,20,replace=TRUE) Sales<-sample(500:1000,20) df1<-data.frame(Year,Sales) df1

创建以下数据框:

  Year Sales
 1 2001 537
 2 2005 742
 3 2003 551
 4 2003 590
 5 2001 792
 6 2003 985
 7 2003 765
 8 2003 993
 9 2003 764
10 2003 855
11 2001 959
12 2004 607
13 2002 555
14 2002 566
15 2005 596
16 2003 714
17 2005 846
18 2004 910
19 2005 849
20 2002 740

为了在上面创建的数据框中查找按年份汇总的销售额,请将以下代码添加到上面的代码片段中:

Open Compiler
Year<-sample(2001:2005,20,replace=TRUE) Sales<-sample(500:1000,20) df1<-data.frame(Year,Sales) aggregate(df1["Sales"],by=df1["Year"],sum)

输出

如果您将以上所有代码片段作为一个程序执行,则会生成以下输出:

 Year Sales
1 2001 2288
2 2002 1861
3 2003 6217
4 2004 1517
5 2005 3033

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

示例 2

以下代码片段创建一个示例数据框:

Open Compiler
Years<-sample(2011:2016,20,replace=TRUE) GDP_Variation<-sample(1:10,20,replace=TRUE) df2<-data.frame(Years,GDP_Variation) df2

创建以下数据框:

 Years  GDP_Variation
 1 2011      10
 2 2011       7
 3 2014       3
 4 2016       8
 5 2012      10
 6 2016       9
 7 2011       9
 8 2013       7
 9 2016       3
10 2016       6
11 2016       6
12 2012       3
13 2013       6
14 2015       5
15 2013       1
16 2011       8
17 2013       4
18 2015       5
19 2016       7
20 2013       8

为了在上面创建的数据框中查找按年份汇总的 GDP_Variation,请将以下代码添加到上面的代码片段中:

Open Compiler
Years<-sample(2011:2016,20,replace=TRUE) GDP_Variation<-sample(1:10,20,replace=TRUE) df2<-data.frame(Years,GDP_Variation) aggregate(df2["GDP_Variation"],by=df2["Years"],sum)

输出

如果您将以上所有代码片段作为一个程序执行,则会生成以下输出:

  Years GDP_Variation
1 2011      34
2 2012      13
3 2013      26
4 2014       3
5 2015      10
6 2016      39

更新于: 2021年11月8日

2K+ 次浏览

启动您的职业生涯

完成课程获得认证

开始
广告