如何在R数据框中找到按年份列的总数?
要在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_Variation,请将以下代码添加到上面的代码段中-
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