R 汇总日期序列数据

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))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值