R 汇总日期序列数据_neweastsun的专栏-CSDN博客
https://blog.csdn.net/neweastsun/article/details/122049940
方法一:format函数
date <- as.Date(“2021-01-25”); date
formatted_date <- format(date, format="%m/%d/%y"); formatted_date
方法二:lubridate包
library(lubridate)
library(tidyverse)
df <- tibble(ondate=c(“2021-01-01”, “2021-04-04” , “2021-07-09”), #
sales=c(34, 36, 44)); df
df %>% mutate(ondate=ymd(ondate), # 转化为 :lubridate:: ymd
year =year(ondate), # 提取年份:year
quarter =quarter(ondate), # 季度:quarter
month=month(ondate, label = TRUE),# 月份:month label添加月字
day =day(ondate), # 日期:day 整数
wday =wday(ondate, label = TRUE) # 星期:wday label添加周字
) -> df; df
实例
set.seed(1)
ds <- tibble(ondate = as.Date(“2020-12-01”) + 0:99,
sales = runif(100, 20, 50)); ds
ds %>% mutate(year = year(ondate),
quarter = quarter(ondate),
month = month(ondate)
) -> ds; ds
按年汇总
ds %>% group_by(year) %>%
summarise(ymean=mean(sales),
ysum =sum(sales))
按季度汇总
ds %>% group_by(quarter) %>%
summarise(qmean=mean(sales),
qsum =sum(sales))
按月汇总2021年数据
ds %>% filter(ondate >=‘2021-01-01’)%>%
group_by(month) %>%
summarise(mmean=mean(sales),
msum =sum(sales))
# R 汇总日期序列数据_neweastsun的专栏-CSDN博客
# https://blog.csdn.net/neweastsun/article/details/122049940
# 方法一:format函数
date <- as.Date("2021-01-25"); date
formatted_date <- format(date, format="%m/%d/%y"); formatted_date
# 方法二:lubridate包
library(lubridate)
library(tidyverse)
df <- tibble(ondate=c("2021-01-01", "2021-04-04" , "2021-07-09"), # <chr>
sales=c(34, 36, 44)); df
df %>% mutate(ondate=ymd(ondate), # 转化为 <date>:lubridate:: ymd
year =year(ondate), # 提取年份:year
quarter =quarter(ondate), # 季度:quarter
month=month(ondate, label = TRUE),# 月份:month label添加月字
day =day(ondate), # 日期:day <ord> 整数
wday =wday(ondate, label = TRUE) # 星期:wday label添加周字
) -> df; df
# 实例
set.seed(1)
ds <- tibble(ondate = as.Date("2020-12-01") + 0:99,
sales = runif(100, 20, 50)); ds
ds %>% mutate(year = year(ondate),
quarter = quarter(ondate),
month = month(ondate)
) -> ds; ds
# 按年汇总
ds %>% group_by(year) %>%
summarise(ymean=mean(sales),
ysum =sum(sales))
# 按季度汇总
ds %>% group_by(quarter) %>%
summarise(qmean=mean(sales),
qsum =sum(sales))
# 按月汇总2021年数据
ds %>% filter(ondate >='2021-01-01')%>%
group_by(month) %>%
summarise(mmean=mean(sales),
msum =sum(sales))