So konvertieren sie Text in Datum in R

Von Fabian
Kategorie: R
Tags: Operationen
Lesezeit: 3 Minuten

Wenn Sie Datums- und Uhrzeitdaten in R importieren, werden Werte häufig als Zeichenfolgen importiert.

Der einfachste Weg, Zeichenfolgen in Datumsangaben in R zu konvertieren, ist die Funktion as.Date(), die die folgende Syntax verwendet:

as.Date(x, format)

wo:

  • x: Ein einzelner Zeichenfolgenwert oder ein Vektor von Zeichenfolgenwerten.
  • format: Das für das Datum zu verwendende Format. Der Standardwert ist JJJJ-MM-TT.

Mit dem Befehl ?strftime in R können Sie eine vollständige Liste der Argumente anzeigen, die für das Datumsformat verwendet werden können. Die häufigsten sind jedoch:

  • %d: Tag des Monats als Dezimalzahl (01-31)
  • %m: Monat als Dezimalzahl (01-12)
  • %y: Jahr ohne Jahrhundert (zB 04)
  • %Y: Jahr mit Jahrhundert (zB 2004)

Dieses Tutorial zeigt einige Beispiele für die praktische Verwendung der Funktion as.Date() in der Praxis.

Beispiel 1: Konvertieren Sie eine einzelne Zeichenfolge in ein Datum

Der folgende Code zeigt, wie ein einzelner Zeichenfolgenwert in ein Datum konvertiert wird:

#String-Wert erstellen
x <- c("2021-07-24")

#String zu Datum konvertieren
new <- as.Date(x, format="%Y-%m-%d")
new

[1] "2021-07-24"

#Klasse der neuen Variablen prüfen
class(new)

[1] "Date"

Beispiel 2: Konvertieren Sie einen Vektor von Zeichenfolgen in Datumsangaben

Der folgende Code zeigt, wie ein Vektor von Zeichenfolgen in Datumsangaben konvertiert wird:

#Vektor von Strings erstellen
x <- c("2021-07-24", "2021-07-26", "2021-07-30")

#String auf Datum konvertieren
new <- as.Date(x, format="%Y-%m-%d")
new

[1] "2021-07-24" "2021-07-26" "2021-07-30"

#Klasse der neuen Variablen prüfen
class(new)

[1] "Date"

Beispiel 3: Konvertieren einer Dataframespalte in Datumsangaben

Der folgende Code zeigt, wie eine Dataframespalte von Zeichenfolgen in Datumsangaben konvertiert wird:

#Dataframe erstellen
df <- data.frame(day = c("2021-07-24", "2021-07-26", "2021-07-30"),
                 sales=c(22, 25, 28),
                 products=c(3, 6, 7))

#Ansichtsstruktur des Dataframes
str(df)

'data.frame':   3 obs. of  3 variables:
 $ day    : Factor w/ 3 levels "2021-07-24","2021-07-26",..: 1 2 3
 $ sales  : num  22 25 28
 $ products: num  3 6 7

#Tag Variable zu Datum konvertieren
df$day <- as.Date(df$day, format="%Y-%m-%d")

#Neues Dataframe untersuchen
str(df)

'data.frame':   3 obs. of  3 variables:
 $ day    : Date, format: "2021-07-24" "2021-07-26" ...
 $ sales  : num  22 25 28
 $ products: num  3 6 7

Beispiel 4: Konvertieren mehrerer Datumsrahmenspalten in Datumsangaben

Der folgende Code zeigt, wie mehrere Dataframespalten von Zeichenfolgen in Datumsangaben konvertiert werden:

# Dataframe erstellen
df <- data.frame(start = c("2021-07-24", "2021-07-26", "2021-07-30"),
                 end = c("2021-07-25", "2021-07-28", "2021-08-02"),
                 products=c(3, 6, 7))

#Struktur des Dataframes anzeigen
str(df)

'data.frame':   3 obs. of  3 variables:
 $ start  : Factor w/ 3 levels "2021-07-24","2021-07-26",..: 1 2 3
 $ end    : Factor w/ 3 levels "2021-07-25","2021-07-28",..: 1 2 3
 $ products: num  3 6 7

#Variablen start und end zu Datum konvertieren
df[,c('start', 'end')] = lapply(df[,c('start', 'end')],
                                function(x) as.Date(x, format="%Y-%m-%d"))

#Struktur des neuen Dataframes anzeigen
str(df)

'data.frame':   3 obs. of  3 variables:
 $ start  : Date, format: "2021-07-24" "2021-07-26" ...
 $ end    : Date, format: "2021-07-25" "2021-07-28" ...
 $ products: num  3 6 7

Weitere Informationen zur in diesem Beispiel verwendeten Funktion lapply() finden Sie hier.

Zusätzliche Ressourcen

So sortieren Sie ein Dataframe nach Datum in R
So extrahieren Sie das Jahr vom Datum in R

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: