如何从结束日期和天数计算开始日期

How to calculate start-date from end date and number of days

我有一列包含结束日期,另一列包含天数。我想根据此信息计算开始日期。

结束日期:2019 年 7 月 15 日; 2019 年 6 月 10 日
天数:10; 9 我想根据 R 中的上述信息计算开始日期。

lubridate 包提供了将字符串转换为 Date 的函数(在本例中为 mdy)。然后你可以从结束日期减去天数。

ed = c("7/15/2019", "6/10/2019")
n = c(10, 9)
lubridate::mdy(ed) - n
#[1] "2019-07-05" "2019-06-01"

考虑以 R 为底的直接减法:

df <- within(df, {
     end_date <- as.Date(end_date, format="%m/%d/%Y")
     start_date <- end_date - num_of_days
})