Heim > Artikel > Backend-Entwicklung > Wie konvertiert man in Pandas einen zeitzonenbewussten Zeitstempel in eine naive Ortszeit?
So konvertieren Sie einen zeitzonenbezogenen Zeitstempel in naive Ortszeit in Pandas
In Pandas wird die Funktion tz_localize verwendet, um einen Zeitstempel zu erstellen oder DateTimeIndex, der die Zeitzone berücksichtigt. Wenn Sie jedoch mit Daten arbeiten, die bereits die Zeitzone berücksichtigen, kann es erforderlich sein, sie wieder in einen naiven Zeitstempel umzuwandeln und gleichzeitig die Zeitzoneninformationen für die Ortszeit beizubehalten.
Eine Möglichkeit besteht darin, die Zeitzone auf „Keine“ festzulegen , aber dies führt dazu, dass die Zeit in UTC konvertiert wird. Um dies zu vermeiden, stellt Pandas die Funktion tz_localize(None) bereit, die die Zeitzoneninformationen effektiv entfernt und gleichzeitig die für den Benutzer sichtbare Zeit in der lokalen Zeitzone beibehält.
Bedenken Sie beispielsweise die folgende Zeitzone -aware DateTimeIndex:
t = pd.date_range(start="2013-05-18 12:00:00", periods=2, freq='H', tz="Europe/Brussels")
Mit tz_localize(None) können wir es in eine naive Ortszeit umwandeln:
t_naive_local = t.tz_localize(None)
Der resultierende Index wird die gleichen Zeiten wie zuvor haben, aber ohne die Zeitzoneninformationen:
t_naive_local DatetimeIndex(['2013-05-18 12:00:00', '2013-05-18 13:00:00'], dtype='datetime64[ns]', freq='H')
Zusätzlich stellt Pandas auch die Funktion tz_convert(None) bereit, die die Zeitzoneninformationen entfernt und die Zeit in UTC umwandelt, was zu einer naiven UTC-Zeit führt.
Diese Konvertierung ist wesentlich effizienter als der alternative Ansatz der Verwendung der datetime.replace-Methode, wie die folgenden Zeitabläufe zeigen:
%timeit t.tz_localize(None) 1000 loops, best of 3: 233 µs per loop %timeit pd.DatetimeIndex([i.replace(tzinfo=None) for i in t]) 10 loops, best of 3: 99.7 ms per loop
Durch die Nutzung dieser Funktionen ist die Konvertierung einfach Zeitzonenbewusste Pandas-Daten in naive Ortszeit oder UTC umwandeln, wodurch die für den Benutzer sichtbare Zeit erhalten bleibt und die Effizienz der Datenverarbeitung verbessert wird.
Das obige ist der detaillierte Inhalt vonWie konvertiert man in Pandas einen zeitzonenbewussten Zeitstempel in eine naive Ortszeit?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!