R : Comment obtenir le premier ou le dernier jour du mois en utilisant Lubridate
Vous pouvez utiliser les méthodes suivantes pour obtenir le premier ou le dernier jour du mois pour une date dans R à l’aide des fonctions du package lubridate :
Méthode 1 : obtenir le premier jour du mois
library(lubridate) df$first_day <- floor_date(ymd(df$date), 'month')
Méthode 2 : obtenir le dernier jour du mois
library(lubridate) df$last_day <- ceiling_date(ymd(df$date), 'month') - days(1)
Les exemples suivants montrent comment utiliser chaque méthode en pratique avec le bloc de données suivant :
#create data frame df <- data.frame(date=c('2022-01-05', '2022-02-18', '2022-03-21', '2022-09-15', '2022-10-30', '2022-12-25'), sales=c(14, 29, 25, 23, 39, 46)) #view data frame df date sales 1 2022-01-05 14 2 2022-02-18 29 3 2022-03-21 25 4 2022-09-15 23 5 2022-10-30 39 6 2022-12-25 46
Exemple 1 : Obtenez le premier jour du mois en utilisant Lubrifiant
Le code suivant montre comment utiliser la fonction floor_date() du package lubridate pour obtenir le premier jour du mois pour chaque valeur de la colonne date :
#add new column that contains first day of month
df$first_day <- floor_date(ymd(df$date), 'month')
#view updated data frame
df
date sales first_day
1 2022-01-05 14 2022-01-01
2 2022-02-18 29 2022-02-01
3 2022-03-21 25 2022-03-01
4 2022-09-15 23 2022-09-01
5 2022-10-30 39 2022-10-01
6 2022-12-25 46 2022-12-01
Notez que les valeurs de la nouvelle colonne first_day contiennent le premier jour du mois pour chaque valeur de la colonne date .
Remarque : Nous avons utilisé la fonction ymd() pour d’abord convertir les chaînes de la colonne date en un format de date reconnaissable.
Exemple 2 : Obtenir le dernier jour du mois à l’aide de Lubridate
Le code suivant montre comment utiliser la fonction Ceiling_date() du package lubridate pour obtenir le dernier jour du mois pour chaque valeur de la colonne date :
#add new column that contains last day of month
df$last_day <- ceiling_date(ymd(df$date), 'month') - days(1)
#view updated data frame
df
date sales last_day
1 2022-01-05 14 2022-01-31
2 2022-02-18 29 2022-02-28
3 2022-03-21 25 2022-03-31
4 2022-09-15 23 2022-09-30
5 2022-10-30 39 2022-10-31
6 2022-12-25 46 2022-12-3122-12-01
Notez que les valeurs de la nouvelle colonne last_day contiennent le dernier jour du mois pour chaque valeur de la colonne 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