Pandas: so kombinieren sie datums- und zeitspalten
Mit der folgenden Syntax können Sie die Datums- und Uhrzeitspalten eines Pandas-DataFrames in einer einzigen Spalte kombinieren:
df[' datetime '] = pd. to_datetime (df[' date '] + ' ' + df[' time '])
Beachten Sie, dass diese Syntax davon ausgeht, dass sowohl die Datums- als auch die Uhrzeitspalten aktuelle Zeichenfolgen sind.
Wenn beide Spalten noch keine Zeichenfolgen sind, können Sie sie mit astype(str) in Zeichenfolgen konvertieren:
df[' datetime '] = pd. to_datetime (df[' date ']. astype ( str ) + ' ' + df[' time ']. astype ( str ))
Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.
Beispiel: Kombinieren Sie Datums- und Uhrzeitspalten in Pandas
Nehmen wir an, wir haben den folgenden Pandas-DataFrame, der eine Datumsspalte und eine Zeitspalte enthält:
import pandas as pd #createDataFrame df = pd. DataFrame ({' date ': ['10-1-2023', '10-4-2023', '10-6-2023', '10-6-2023', '10-14-2023', '10-15-2023', '10-29-2023'], ' time ': ['4:15:00', '7:16:04', '9:25:00', '10:13:45', '15:30:00', '18:15:00', '23:15:00']}) #view DataFrame print (df) date time 0 10-1-2023 4:15:00 1 10-4-2023 7:16:04 2 10-6-2023 9:25:00 3 10-6-2023 10:13:45 4 10-14-2023 15:30:00 5 10-15-2023 18:15:00 6 10-29-2023 23:15:00
Nehmen wir an, wir möchten eine neue Spalte namens datetime erstellen, die die Werte aus den Datums- und Uhrzeitspalten kombiniert.
Wir können dazu die folgende Syntax verwenden:
#create new datetime column df[' datetime '] = pd. to_datetime (df[' date '] + ' ' + df[' time ']) #view updated DataFrame print (df) datetime datetime 0 10-1-2023 4:15:00 2023-10-01 04:15:00 1 10-4-2023 7:16:04 2023-10-04 07:16:04 2 10-6-2023 9:25:00 2023-10-06 09:25:00 3 10-6-2023 10:13:45 2023-10-06 10:13:45 4 10-14-2023 15:30:00 2023-10-14 15:30:00
Beachten Sie, dass die neue Datetime- Spalte die Werte aus den Datums- und Uhrzeitspalten erfolgreich in einer einzigen Spalte zusammengefasst hat.
Wir können auch die Funktion dtypes verwenden, um die Datentypen jeder Spalte im DataFrame zu überprüfen:
#view data type of each column
df. dtypes
date object
time object
datetime datetime64[ns]
dtype:object
Aus dem Ergebnis können wir erkennen, dass die Datums- und Zeitspalten beide Objekte (dh Zeichenfolgen) sind und die neue Datums-/ Uhrzeitspalte eine Datums-/Uhrzeitspalte ist.
Hinweis : Die vollständige Dokumentation der Pandas to_datetime() -Funktion finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in Pandas ausgeführt werden:
So erstellen Sie einen Datumsbereich in Pandas
So konvertieren Sie den Zeitstempel in Pandas in Datum/Uhrzeit
So berechnen Sie eine Differenz zwischen zwei Daten in Pandas