Berechnen Sie den Zeitunterschied zwischen zwei Pandas-Spalten in Stunden und Minuten
Das Bestimmen des Zeitunterschieds zwischen zwei Datumsspalten in einem DataFrame kann nützlich sein für verschiedene Anwendungen. Der Standardansatz mit dem Subtraktionsoperator führt jedoch zu einem datetime.timedelta-Objekt, das Tage enthält. Um dies in Stunden und Minuten umzuwandeln, können wir die Methode as_type nutzen.
Angenommen, wir haben zwei Spalten in unserem DataFrame, fromdate und todate, die jeweils die Start- und Endzeiten darstellen. Mit dem Subtraktionsoperator erhalten wir den Zeitunterschied wie folgt:
import pandas as pd data = {'todate': [pd.Timestamp('2014-01-24 13:03:12.050000'), pd.Timestamp('2014-01-27 11:57:18.240000'), pd.Timestamp('2014-01-23 10:07:47.660000')], 'fromdate': [pd.Timestamp('2014-01-26 23:41:21.870000'), pd.Timestamp('2014-01-27 15:38:22.540000'), pd.Timestamp('2014-01-23 18:50:41.420000')]} df = pd.DataFrame(data) df['diff'] = df['fromdate'] - df['todate']
Dies gibt uns die folgende Ausgabe, die Tage umfasst:
todate fromdate diff 0 2014-01-24 13:03:12.050 2014-01-26 23:41:21.870 2 days 10:38:09.820000 1 2014-01-27 11:57:18.240 2014-01-27 15:38:22.540 0 days 03:41:04.300000 2 2014-01-23 10:07:47.660 2014-01-23 18:50:41.420 0 days 08:42:53.760000
Um den Zeitunterschied nur in Stunden umzuwandeln und Minuten können wir die Methode as_type verwenden, um das Objekt datetime.timedelta in ein zu konvertieren timedelta64 Objekt mit einer bestimmten Maßeinheit:
df['diff_hours'] = df['diff'].astype('timedelta64[h]')
Dies gibt uns die Ausgabe:
todate fromdate diff diff_hours 0 2014-01-24 13:03:12.050 2014-01-26 23:41:21.870 2 days 10:38:09.820 58 1 2014-01-27 11:57:18.240 2014-01-27 15:38:22.540 0 days 03:41:04.300 3 2 2014-01-23 10:07:47.660 2014-01-23 18:50:41.420 0 days 08:42:53.760 8
Wie Sie sehen können, sind die diff_hoursSpalte enthält jetzt den Zeitunterschied zwischen den beiden Daten in Stunden.
Das obige ist der detaillierte Inhalt vonWie kann ich den Zeitunterschied in Stunden und Minuten zwischen zwei Pandas-DataFrame-Spalten effizient berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!