如何在 R 数据框中查找按年份总计的列?
r programmingserver side programmingprogramming更新于 2025/4/8 22:22:17
要在 R 数据框中查找按年份总计的列,我们可以使用带有 sum 函数的聚合函数。
例如,如果我们有一个名为 df 的数据框,其中包含一个年份列(例如 Year)和一个数字列(例如 Demand),那么我们可以借助下面给出的命令 − 查找按年份总计的需求
aggregate(df["Demand"],by=df["Year"],sum)
示例 1
以下代码片段创建了一个示例数据框 −
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
要在上述创建的数据框中查找按年份计算的总销售额,请将以下代码添加到上述代码片段中 −
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
示例 2
以下代码片段创建了一个示例数据框 −
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 总体变化,请将以下代码添加到上述代码片段中 −
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