Comment ajouter des jours à ce jour dans R (avec des exemples)



Vous pouvez utiliser l’une des méthodes suivantes pour ajouter un certain nombre de jours à une date dans R :

Méthode 1 : utiliser Base R

#create new column that adds 5 days to date column
df$date_plus5 <- as.Date(df$date) + 5

Méthode 2 : utiliser le package Lubridate

library(lubridate)

#create new column that adds 5 days to date column
df$date_plus5 <- ymd(df$date) + days(5)

Les exemples suivants montrent comment utiliser chaque méthode avec le bloc de données suivant :

#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

        date sales
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

Remarque : Pour soustraire des jours d’une date, changez simplement le signe d’addition en signe de soustraction dans l’une des formules ci-dessus.

Exemple 1 : ajouter des jours à ce jour à l’aide de Base R

Le code suivant montre comment créer une nouvelle colonne appelée date_plus5 qui ajoute cinq jours à chacune des dates de la colonne date :

#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

Notez que les valeurs de la nouvelle colonne date_plus5 sont égales aux valeurs de la colonne date auxquelles sont ajoutées cinq jours.

Nous pouvons également utiliser la fonction class() pour confirmer que la nouvelle colonne est au format date :

#display class of date_plus5 column
class(df$date_plus5)

[1] "Date"

Exemple 2 : ajouter des jours à ce jour à l’aide du package lubridate

Le code suivant montre comment utiliser les fonctions ymd() et jours() du package lubridate pour créer une nouvelle colonne appelée date_plus5 qui ajoute cinq jours à chacune des dates de la colonne date :

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

Les valeurs de la nouvelle colonne date_plus5 sont égales aux valeurs de la colonne date auxquelles sont ajoutées cinq jours.

Remarque : La fonction ymd() indique au package lubridate que les valeurs de la colonne date sont actuellement au format année-mois-date.

Reportez-vous à la page de documentation de Lubridate pour plus d’options de formatage de date.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :

Comment convertir une date en numérique dans R
Comment extraire le mois de la date dans R
Comment ajouter et soustraire des mois à une date dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *