如何使用R计算特定日期范围内列的平均值?
我知道可能会有类似的问题,但我找不到任何具体的答案为我的条件。我有这样一个数据帧:如何使用R计算特定日期范围内列的平均值?,r,statistics,R,Statistics,我知道可能会有类似的问题,但我找不到任何具体的答案为我的条件。我有这样一个数据帧: date CVDadmissions 2001.10.01 48 2001.10.02 12 2002.10.01 24 2002.10.02 22 我想要的是: 2001年和2002年的任务平均数 有人能告诉我如何使用R吗?转换为日期对象,提取年份,然后取平均值 aggregate(CVDadmissions~year,
date CVDadmissions
2001.10.01 48
2001.10.02 12
2002.10.01 24
2002.10.02 22
我想要的是:
- 2001年和2002年的任务平均数李>
有人能告诉我如何使用R吗?转换为
日期
对象,提取年份,然后取平均值
aggregate(CVDadmissions~year,
transform(df, year = format(as.Date(date, "%Y.%m.%d"), "%Y")), mean)
# year CVDadmissions
#1 2001 30
#2 2002 23
使用dplyr
和lubridate
,我们可以
library(dplyr)
library(lubridate)
df %>%
mutate(date = ymd(date)) %>%
group_by(year = year(date)) %>%
summarise(CVDadmissions = mean(CVDadmissions))
转换为
Date
对象,提取年份,然后取mean
aggregate(CVDadmissions~year,
transform(df, year = format(as.Date(date, "%Y.%m.%d"), "%Y")), mean)
# year CVDadmissions
#1 2001 30
#2 2002 23
使用dplyr
和lubridate
,我们可以
library(dplyr)
library(lubridate)
df %>%
mutate(date = ymd(date)) %>%
group_by(year = year(date)) %>%
summarise(CVDadmissions = mean(CVDadmissions))
这里的1和4指的是什么?@hasanarshad函数从位置1到4的日期提取一个子字符串,即一年的前四个字符。这里的1和4指的是什么?@hasanarshad函数从位置1到4的日期提取一个子字符串,即一年的前四个字符。Ronak。非常感谢。那么,如果我们在几年内对1-12个月进行了逐月平均,代码会是什么呢。如果您也能分享这些代码,我将不胜感激。@hasanarshad在这种情况下,请逐月摘录<代码>聚合(CVD年/月,转换(df,年/月=格式(截止日期,%Y.%m.%d”),%Y-%m)),平均值)Ronak。非常感谢。那么,如果我们在几年内对1-12个月进行了逐月平均,代码会是什么呢。如果您也能分享这些代码,我将不胜感激。@hasanarshad在这种情况下,请逐月摘录<代码>聚合(CVD年/月,转换(df,年/月=格式)(截止日期(日期,%Y.%m.%d”),%Y-%m)),平均值)