如何解决将季度解析为日期,使用“ qr”解析季度的最后一天 数据
我的询问类似于this question的模仿,但我使用的是lubridate。我有一些字符串-quarters
需要翻译成日期,但要像这样获得季度的第一天,
# library(lubridate)
quaters <- c("2018Q4","2019Q1","2019Q2","2019Q3","2019Q4","2020Q1")
yq(quaters)
# [1] "2018-10-01" "2019-01-01" "2019-04-01" "2019-07-01" "2019-10-01"
# [6] "2020-01-01"
我想要这个季度的最后一天。像这样
yq(quaters,last) "!! NOT WOKRING CODE
# [1] "2018-12-31" "2019-03-31" "2019-06-30" "2019-09-30" "2019-12-31"
# [6] "2020-03-31"
解决方法
您可以在每个日期前添加3个月,然后减去1天即可得出每个季度的最后一天。
library(lubridate)
quaters <- c("2018Q4","2019Q1","2019Q2","2019Q3","2019Q4","2020Q1")
yq(quaters) %m+% months(3) - 1
#[1] "2018-12-31" "2019-03-31" "2019-06-30" "2019-09-30" "2019-12-31" "2020-03-31"
另一个类似的选择是使用ceiling_date
作为unit
的{{1}}来获取下一季度的日期,然后从中减去1天。
"quarter"
,
我们可以使用as.yearqtr
中的zoo
library(zoo)
as.Date(as.yearqtr(quaters),1)
#[1] "2018-12-31" "2019-03-31" "2019-06-30" "2019-09-30" "2019-12-31" "2020-03-31"
数据
quaters <- c("2018Q4","2020Q1")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。