r - 从日期变量创建月末日期

标签 r date dataframe

我有一个包含日期变量的大型数据框,它反射(reflect)了该月的第一天。有没有一种简单的方法来创建表示该月最后一天的新数据框日期变量?

下面是一些示例数据:

date.start.month=seq(as.Date("2012-01-01"),length=4,by="months")
df=data.frame(date.start.month)
df$date.start.month

"2012-01-01" "2012-02-01" "2012-03-01" "2012-04-01"

我想返回一个新变量:

"2012-01-31" "2012-02-29" "2012-03-31" "2012-04-30"

我尝试了以下方法,但没有成功:

df$date.end.month=seq(df$date.start.month,length=1,by="+1 months")

最佳答案

要获取月份结束时间,您只需创建一个包含所有后续月份的第一个月的 Date 向量并减去 1 天。

date.end.month <- seq(as.Date("2012-02-01"),length=4,by="months")-1
date.end.month
[1] "2012-01-31" "2012-02-29" "2012-03-31" "2012-04-30"

关于r - 从日期变量创建月末日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9503896/

相关文章:

java - 如何在 R 中保存 C5.0 模型并在另一个环境中加载

mysql - 如何在 MySQL 中查找每月的第一个星期日?

r - Fedora 24 上的 libicu 和 stringi 导致 R 头痛

r - R中二进制运算的非数字参数错误,需要说明

r - 多项式回归(不同的结果——相同的数据集,R vs SPSS)。 nnet 包 -- multinom 函数

计算 C 中两个 ISO 8601 日期(包括毫秒)之间的差异

php - 检查输入的开始和结束日期是否在数据库中已有的开始和结束日期之间

python - Pandas:从数据帧返回行,其中多个列子集不为零

r - 查找具有一系列连续列值的行

python-3.x - 将一列替换为另一列,除非 Pandas 中另一列为 NaN