So extrahieren sie den monat aus dem datum in r (mit beispielen)


Es gibt zwei Möglichkeiten, den Monat schnell aus einem Datum in R zu extrahieren:

Methode 1: Verwenden Sie format()

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

Methode 2: Verwenden Sie das Schmiermittelpaket

 library (lubridate)

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

Dieses Tutorial zeigt ein Beispiel für die praktische Anwendung jeder dieser Methoden.

Methode 1: Extrahieren Sie den Monat aus dem Datum mit format()

Der folgende Code zeigt, wie man den Monat aus einem Datum extrahiert, indem man die Funktion format() in Kombination mit dem Argument „%m“ 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 date
1 01/01/2021 34
2 01/04/2021 36
3 01/09/2021 44

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

#view updated data frame
df

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

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 month
df$month<- format( as.Date (df$date, format=" %Y-%m-%d ")," %m ")

#view updated data frame
df

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

Hinweis : Sie können %B auch verwenden, um den Monat als Zeichenfolgennamen (Januar) anstelle eines numerischen Werts (01) zu extrahieren.

Methode 2: Extrahieren Sie den Monat aus dem Datum mit Lubridate

Wir können auch Funktionen im lubridate-Paket verwenden, um schnell den Monat 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 month
df$month<- month( mdy (df$date))

#view updated data frame
df

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

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 date
1 2021-01-01 34
2 2021-01-04 36
3 2021-01-09 44

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

#view updated data frame
df

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

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in R ausgeführt werden:

So extrahieren Sie das Jahr aus dem Datum in R
So berechnen Sie die Anzahl der Monate zwischen Datumsangaben in R

Einen Kommentar hinzufügen

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