如何在R中找到按日期分组的列的平均值?

要查找按日期分组的列的平均值,我们可以简单地使用聚合函数。例如,如果我们有一个名为 df 的数据框,其中包含一个日期列 Date 和数字列 Num 那么我们可以使用以下命令在 Date 列中按日期找到 Num 的平均值 -

aggregate(Num~Date,df,mean)

示例 1

以下代码段创建了一个示例数据框 -

Date<-

sample(c(as.Date("2021/05/01"),as.Date("2021/05/10"),as.Date("2021/05/15"),as.Date("2021/05/20")),20,replace=TRUE)

Sales<-sample(100:500,20)

df1<-data.frame(Date,Sales)

df1

创建了以下数据框

       Date  Sales

1  2021-05-15 221

2  2021-05-10 414

3  2021-05-20 469

4  2021-05-01 101

5  2021-05-20 313

6  2021-05-15 264

7  2021-05-01 302

8  2021-05-01 137

9  2021-05-15 109

10 2021-05-01 126

11 2021-05-20 498

12 2021-05-20 163

13 2021-05-01 446

14 2021-05-20 318

15 2021-05-15 180

16 2021-05-20 291

17 2021-05-10 390

18 2021-05-10 139

19 2021-05-15 337

20 2021-05-20 231

要在上面创建的数据框中按日期查找销售额的平均值,请将以下代码添加到上面的代码段中 -

Date<-

sample(c(as.Date("2021/05/01"),as.Date("2021/05/10"),as.Date("2021/05/15"),as.Date("2021/05/20")),20,replace=TRUE)

Sales<-sample(100:500,20)

df1<-data.frame(Date,Sales)

aggregate(Sales~Date,df1,mean)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

       Date   Sales

1 2021-05-01 222.4000

2 2021-05-10 314.3333

3 2021-05-15 222.2000

4 2021-05-20 326.1429

示例 2

以下代码段创建了一个示例数据框 -

Date<-

sample(c(as.Date("2021/01/01"),as.Date("2021/02/15"),as.Date("2021/02/22"),as.Date("2021/01/18")),20,replace=TRUE)

Result<-sample(1:50,20)

df2<-data.frame(Date,Result)

df2

创建了以下数据框

      Date    Result

1  2021-01-01 40

2  2021-02-22 19

3  2021-01-18 15

4  2021-02-15 39

5  2021-02-15 35

6  2021-02-22  1

7  2021-02-22 18

8  2021-01-18 46

9  2021-01-01 23

10 2021-02-15 50

11 2021-02-22 12

12 2021-02-15 28

13 2021-02-15 48

14 2021-01-18 13

15 2021-02-15 11

16 2021-01-18 27

17 2021-01-01 22

18 2021-02-22 49

19 2021-02-15 45

20 2021-01-18 47

要在上面创建的数据框中按日期查找结果的平均值,请将以下代码添加到上面的代码段中 -

Date<-

sample(c(as.Date("2021/01/01"),as.Date("2021/02/15"),as.Date("2021/02/22"),as.Date("2021/01/18")),20,replace=TRUE)

Result<-sample(1:50,20)

df2<-data.frame(Date,Result)

aggregate(Result~Date,df2,mean)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

       Date   Result

1 2021-01-01 28.33333

2 2021-01-18 29.60000

3 2021-02-15 36.57143

4 2021-02-22 19.80000

以上是 如何在R中找到按日期分组的列的平均值? 的全部内容, 来源链接: utcz.com/z/327407.html

回到顶部