So extrahieren sie das jahr aus dem datum in r (mit beispielen)
Es gibt zwei Möglichkeiten, das Jahr schnell aus einem Datum in R zu extrahieren:
Methode 1: Verwenden Sie format()
df$year <- format( as.Date (df$date, format=" %d/%m/%Y ")," %Y ")
Methode 2: Verwenden Sie das Schmiermittelpaket
library (lubridate) df$year <- year( mdy (df$date))
Dieses Tutorial zeigt ein Beispiel für die praktische Anwendung jeder dieser Methoden.
Methode 1: Extrahieren Sie das Jahr aus dem Datum mit format()
Der folgende Code zeigt, wie man das Jahr aus einem Datum extrahiert, indem man die Funktion format() in Kombination mit dem Argument „%Y“ verwendet:
#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
Beachten Sie, dass diese format() -Funktion mit einer Vielzahl von Datumsformaten funktioniert. Sie müssen lediglich das Format angeben:
#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: Extrahieren Sie das Jahr aus dem Datum mit Lubridate
Wir können auch Funktionen im lubridate-Paket verwenden, um schnell das Jahr aus einem Datum zu extrahieren:
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 funktioniert auch mit einer Vielzahl von Datumsformaten. Sie müssen lediglich das Format angeben:
#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
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in R ausgeführt werden:
So iterieren Sie über Spaltennamen in R
So entfernen Sie Ausreißer aus mehreren Spalten in R