Ich bin in ein seltsames Verhalten versucht versuchen, Zeilen eines Pandas Datenrahmens nach ID und dann Auswahl von max/min Datumsangaben (w/Zeitzonen). Dies ist mit Pandas 0.18.1 und numpy 1.11.1 (Ich sah in früheren Posts ein ähnliches Problem wurde anscheinend mit Pandas 0,15 behoben).Ungerade Zeitzone Verhalten mit groupby/agg in Pandas
Insbesondere dann, wenn ich versuche:
print orders.groupby('OrderID')['start_time'].agg(np.min).iloc[:5]
ich:
OrderID
O161101XVS100000044 2016-11-01 12:03:12.920000-04:00
O161101XVS100000047 2016-11-01 12:03:36.693000-04:00
O161101XVS100000098 2016-11-01 12:09:08.330000-04:00
O161101XVS100000122 2016-11-01 12:09:59.950000-04:00
O161101XVS100000152 2016-11-01 12:11:29.790000-04:00
Name: start_time, dtype: datetime64[ns, US/Eastern]
Wo die Rohdaten hatte mal näher an 08.00 Uhr (US/Eastern). Mit anderen Worten, es wurde auf UTC-Zeiten zurückgesetzt, obwohl es sagt, dass es östliche Zeiten sind und UTC-4-Offset hat.
Aber wenn ich stattdessen versuchen:
print orders.groupby('OrderID')['start_time'].agg(lambda x: np.min(x)).iloc[:5]
ich jetzt:
OrderID
O161101XVS100000044 2016-11-01 08:03:12.920000-04:00
O161101XVS100000047 2016-11-01 08:03:36.693000-04:00
O161101XVS100000098 2016-11-01 08:09:08.330000-04:00
O161101XVS100000122 2016-11-01 08:09:59.950000-04:00
O161101XVS100000152 2016-11-01 08:11:29.790000-04:00
Name: start_time, dtype: datetime64[ns, US/Eastern]
, die das Verhalten, das ich gedacht. Diese zweite Methode ist erheblich langsamer, und ich hätte angenommen, dass die beiden Ansätze identische Ergebnisse liefern würden ...
sieht aus wie ein Fehler sein sollte, können Sie überprüfen, ob dies bereits berichtet wurde auf https://github.com/pandas- dev/pandas/issues und wenn nicht, poste ein neues Problem – EdChum