【发布时间】:2020-05-01 05:13:24
【问题描述】:
我有一个数据框,其中包含一个日期列和一个名为 Rule 的文本列。
如果规则列中的文本是“Rule_1”,我想在该行的日期上添加 3 年,但如果“Rule_2”则为两年。
Date Rule NewDate
2010-01-01 Rule_1 2013-01-01
2012-01-01 Rule_2 2014-01-01
2015-01-01 No_Rule 2015-01-01
我似乎在使用lubridate 添加年份时遇到问题
ifelse(df$Rule=="Rule1",df$Date %m+% years(3),df$Date)
它将添加的日期转换为我认为是从原点开始的天数(?1970)。
但是,如果我在没有 ifelse 的情况下运行表达式df$Date %m+% years(3),那么它可以正常工作。怎么办?
【问题讨论】:
-
是否有任何答案解决了您的问题?如果是,请将答案标记为已接受,否则请发表评论
标签: r