Comment extraire l’année à partir de la date dans R (avec des exemples)



Il existe deux façons d’extraire rapidement l’année d’une date dans R :

Méthode 1 : utiliser format()

df$year <- format(as.Date(df$date, format="%d/%m/%Y"),"%Y")

Méthode 2 : utilisez le package de lubrification

library(lubridate)

df$year <- year(mdy(df$date))

Ce didacticiel montre un exemple de la façon d’utiliser chacune de ces méthodes dans la pratique.

Méthode 1 : Extraire l’année de la date à l’aide de format()

Le code suivant montre comment extraire l’année d’une date à l’aide de la fonction format() combinée à l’argument « %Y » :

#create data frame
df <- data.frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 01/01/2021    34
2 01/04/2021    36
3 01/09/2021    44

#create new variable that contains year
df$year <- format(as.Date(df$date, format="%d/%m/%Y"),"%Y")

#view new data frame
df

        date sales year
1 01/01/2021    34 2021
2 01/04/2021    36 2021
3 01/09/2021    44 2021

Notez que cette fonction format() fonctionne avec une variété de formats de date. Il faut simplement préciser le format :

#create data frame
df <- data.frame(date=c("2021-01-01", "2021-01-04" , "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 2021-01-01    34
2 2021-01-04    36
3 2021-01-09    44

#create new variable that contains year
df$year <- format(as.Date(df$date, format="%Y-%m-%d"),"%Y")

#view new data frame
df

        date sales year
1 01/01/2021    34 2021
2 01/04/2021    36 2021
3 01/09/2021    44 2021

Méthode 2 : Extraire l’année à partir de la date à l’aide de Lubridate

Nous pouvons également utiliser les fonctions du package lubridate pour extraire rapidement l’année d’une date :

library(lubridate)

#create data frame
df <- data.frame(date=c("01/01/2021", "01/04/2021" , "01/09/2021"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 01/01/2021    34
2 01/04/2021    36
3 01/09/2021    44

#create new variable that contains year
df$year <- year(mdy(df$date))

#view new data frame
df

        date sales year
1 01/01/2021    34 2021
2 01/04/2021    36 2021
3 01/09/2021    44 2021

Lubridate fonctionne également avec une variété de formats de date. Il faut simplement préciser le format :

#create data frame
df <- data.frame(date=c("2021-01-01", "2021-01-04" , "2021-01-09"),
                  sales=c(34, 36, 44))

#view data frame
df

        date sales
1 2021-01-01    34
2 2021-01-04    36
3 2021-01-09    44

#create new variable that contains year
df$year <- year(ymd(df$date))

#view new data frame
df

        date sales year
1 01/01/2021    34 2021
2 01/04/2021    36 2021
3 01/09/2021    44 2021

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans R :

Comment parcourir les noms de colonnes dans R
Comment supprimer les valeurs aberrantes de plusieurs colonnes dans R

Ajouter un commentaire

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