Comment calculer le nombre de mois entre les dates dans R
Vous pouvez utiliser l’une des deux méthodes suivantes pour calculer le nombre de mois entre deux dates dans R :
Méthode 1 : calculer le nombre de mois entiers entre les dates
library(lubridate)
interval(first_date, second_date) %/% months(1)
Méthode 2 : calculer le nombre de mois partiels (avec décimales) entre les dates
library(lubridate)
interval(first_date, second_date) %/% days(1) / (365/12)
Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.
Exemple 1 : calculer le nombre de mois entiers entre les dates
On peut utiliser le code suivant pour calculer le nombre de mois entiers entre deux dates dans R :
library(lubridate)
#define dates
first_date <- as.Date('2022-05-01')
second_date <- as.Date('2022-09-04')
#calculate difference between dates in months
diff <- interval(first_date, second_date) %/% months(1)
#view difference
diff
[1] 4
On voit qu’il y a quatre mois entiers entre les deux dates que nous avons précisées.
Exemple 2 : calculer le nombre de mois partiels entre les dates
Nous pouvons utiliser le code suivant pour calculer le nombre de mois partiels entre deux dates dans R :
library(lubridate)
#define dates
first_date <- as.Date('2022-05-01')
second_date <- as.Date('2022-09-04')
#calculate difference between dates in partial months
diff <- interval(first_date, second_date) %/% days(1) / (365/12)
#view difference
diff
[1] 4.142466
On voit qu’il y a 4,142466 mois entre les deux dates que nous avons précisées.
Notez à quel point cette méthode est plus spécifique que la méthode précédente car elle nous indique également le nombre de mois partiels entre les dates.
Selon votre situation, vous préférerez peut-être utiliser l’une de ces méthodes plutôt que l’autre.
Remarque : les deux méthodes utilisent les fonctions du package lubridate dans R. Si ce package n’est pas déjà installé, vous pouvez exécuter ce qui suit dans votre console R :
install.packages('lubridate')
Vous pouvez également trouver la documentation complète de la fonction interval() que nous avons utilisée ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans R :
Comment convertir un caractère en horodatage dans R
Comment convertir un facteur en date dans R
Comment extraire l’année à partir de la date dans R