So konvertieren Sie Datetime zu Datum in Pandas

Von Fabian
Kategorie: Python
Lesezeit: 2 Minuten

Oft möchten Sie Datetime in ein Datum in Pandas konvertieren. Glücklicherweise ist dies mit der Funktion .dt.date, die die folgende Syntax annimmt, einfach zu bewerkstelligen:

df['date_column'] = pd.to_datetime(df['datetime_column']).dt.date

Beispiel: Datetime to Date in Pandas

Angenommen, wir haben die folgenden Pandas DataFrame:

import pandas as pd

# Pandas DataFrame mit zwei Spalten erstellen
df = pd.DataFrame({'sales': [4, 11],
                   'time': ['2020-01-15 20:02:58', '2020-01-18 14:43:24']})

# Dataframe anzeigen
print(df)

sales   time
0   4   2020-01-15 20:02:58
1   11  2020-01-18 14:43:24

Um die 'Zeit'-Spalte nur in ein Datum umzuwandeln, können wir die folgende Syntax verwenden:

# Datetime-Spalte in Datum konvertieren
df['time'] = pd.to_datetime(df['time']).dt.date

# DataFrame anzeigen
print(df)

    sales   time
0   4   2020-01-15
1   11  2020-01-18

Jetzt wird in der Spalte "time" nur das Datum ohne Uhrzeit angezeigt.

Verwenden von Normalize() für datetime64 Dtypes

Sie sollten beachten, dass der obige Code ein object zurückgibt:

# dtype jeder Spalte im DataFrame finden
df.dtypes

sales     int64
time     object
dtype:   object

Wenn Sie stattdessen datetime64 möchten, können Sie die Zeitkomponente normalisieren (normalize()), wodurch der dtype als datetime64 beibehalten wird, aber nur das Datum angezeigt wird:

# Datetime-Spalte in Datum konvertieren
df['time'] = pd.to_datetime(df['time']).dt.normalize()

# Dataframe anzeigen
print(df)

    sales   time
0   4   2020-01-15
1   11  2020-01-18

# dtype jeder Spalte im DataFrame finden
df.dtypes

sales             int64
time     datetime64[ns]
dtype: object

Wieder wird nur das Datum angezeigt, aber die Spalte 'time' ist ein datetime64-Typ.

Zusätzliche Ressourcen

So konvertieren Sie Spalten in Pandas in DateTime

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: