Как добавить дни к сегодняшнему дню в r (с примерами)
Вы можете использовать любой из следующих методов, чтобы добавить количество дней к дате в R:
Метод 1: используйте базу 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. Добавление дней к сегодняшнему дню с использованием базы 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.
Следующий код показывает, как использовать функции ymd() иdays() пакета lubridate для создания нового столбца с именем 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:
Как преобразовать дату в числовое значение в R
Как извлечь месяц из даты в R
Как добавить и вычесть месяцы к дате в R