如何在 r 中添加今天的天数(带有示例)
您可以使用以下任一方法在 R 中向日期添加天数:
方法一:使用Base R
#create new column that adds 5 days to date column df$date_plus5 <- as. Date (df$date) + 5
方法 2:使用 Lubridate 包
library (lubridate) #create new column that adds 5 days to date column df$date_plus5 <- ymd(df$date) + days( 5 )
以下示例展示了如何将每种方法与以下数据框结合使用:
#create data frame df <- data. frame (date=c('2022-01-03', '2022-02-15', '2022-05-09', '2022-08-10', '2022-10-14', '2022-12-30'), sales=c(130, 98, 120, 88, 94, 100)) #view data frame df dirty dates 1 2022-01-03 130 2 2022-02-15 98 3 2022-05-09 120 4 2022-08-10 88 5 2022-10-14 94 6 2022-12-30 100
注意:要从日期中减去天数,只需将上述公式之一中的加号更改为减号即可。
示例 1:使用 Base R 将天数添加到今天
以下代码演示如何创建一个名为date_plus5的新列,该列为日期列中的每个日期添加五天:
#create new column that adds 5 days to date column
df$date_plus5 <- as. Date (df$date) + 5
#view updated data frame
df
date sales date_plus5
1 2022-01-03 130 2022-01-08
2 2022-02-15 98 2022-02-20
3 2022-05-09 120 2022-05-14
4 2022-08-10 88 2022-08-15
5 2022-10-14 94 2022-10-19
6 2022-12-30 100 2023-01-04
请注意,新的date_plus5列中的值等于日期列中的值加上五天。
我们还可以使用class()函数来确认新列是日期格式:
#display class of date_plus5 column
class(df$date_plus5)
[1] “Date”
示例 2:使用lubridate 包添加迄今为止的天数
以下代码演示如何使用lubridate包的ymd()和days()函数创建一个名为date_plus5的新列,该列为日期列中的每个日期添加五天:
library (lubridate)
#create new column that adds 5 days to date column
df$date_plus5 <- ymd(df$date) + days( 5 )
#view updated data frame
df
date sales date_plus5
1 2022-01-03 130 2022-01-08
2 2022-02-15 98 2022-02-20
3 2022-05-09 120 2022-05-14
4 2022-08-10 88 2022-08-15
5 2022-10-14 94 2022-10-19
6 2022-12-30 100 2023-01-04
新的date_plus5列中的值等于日期列中的值加上五天。
注意: ymd()函数告诉lubridate包,日期列中的值当前采用年-月-日格式。
有关更多日期格式选项,请参阅 Lubridate文档页面。
其他资源
以下教程解释了如何在 R 中执行其他常见任务: