Hoe jaar uit datum te extraheren in r (met voorbeelden)


Er zijn twee manieren om snel het jaartal uit een datum in R te halen:

Methode 1: Gebruik format()

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

Methode 2: Gebruik het smeerpakket

 library (lubridate)

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

Deze tutorial toont een voorbeeld van hoe u elk van deze methoden in de praktijk kunt gebruiken.

Methode 1: Jaar uit datum extraheren met format()

De volgende code laat zien hoe je het jaar uit een datum kunt extraheren met behulp van de functie format() in combinatie met het 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

        dirty dates
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

Merk op dat deze format() -functie met verschillende datumformaten werkt. U hoeft alleen maar het formaat op te geven:

 #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

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

Methode 2: Extraheer het jaar vanaf de datum met Lubridate

We kunnen ook functies in het smeerpakket gebruiken om snel het jaartal uit een datum te halen:

 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

        dirty dates
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 werkt ook met verschillende datumformaten. U hoeft alleen maar het formaat op te geven:

 #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

        dirty dates
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

Aanvullende bronnen

In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R uitvoert:

Hoe kolomnamen te herhalen in R
Hoe u uitschieters uit meerdere kolommen in R kunt verwijderen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert