我正在努力处理一些数据操作。我的数据表中的其中一列包含出生日期,但是对于一个位置,这些值的偏差是100年。使用lubridate和if语句处理日期
我做了一个小数据框来解释我的问题:巴黎/柏林的日期是正确的,我想只改变那些以伦敦为位置的行的日期(对于这个例子从2028年3月25日至1928年3月25日)。
library(lubridate)
date <- as.Date(c('1950-11-1','2028-3-25','1940-3-14'))
location <- c("Paris", "London", "Berlin")
df <- data.frame(date, location)
df$date_new <- ifelse(df$location %in% c("London"), df$date - years(100), df$date)
正如你所看到的,我安装了lubridate包并试图使用if else语句,但只是给了我新列了一些负数。
该解决方案可能非常简单,但我无法弄清楚,它让我疯狂。
谢谢!
的日期级别被ifelse破坏...寻找为什么 –