Heim >Backend-Entwicklung >Python-Tutorial >Wie konvertiert man den timezonenbewussten Pandas DateTimeIndex in naive Zeitstempel unter Beibehaltung der Zeitzone?
Pandas bietet die Funktion tz_localize zum Hinzufügen von Zeitzoneninformationen zu Zeitstempeln und Datum/Uhrzeit Indizes. Die Frage hier bezieht sich jedoch auf den umgekehrten Vorgang: Konvertieren von zeitzonenbewussten Zeitstempeln in naive unter Beibehaltung der ursprünglichen Zeitzone.
Beginnend mit Pandas 0.15.0, Um diese Konvertierung zu erleichtern, wurde die Methode tz_localize(None) implementiert. Bei Anwendung auf einen timezonenbewussten DateTimeIndex werden die Zeitzoneninformationen entfernt, was zu einer naiven Ortszeit führt.
import pandas as pd t = pd.date_range(start="2013-05-18 12:00:00", periods=2, freq='H', tz="Europe/Brussels") t_naive = t.tz_localize(None) # Naive local time print(t_naive) # Output: # DatetimeIndex(['2013-05-18 12:00:00', '2013-05-18 13:00:00'], dtype='datetime64[ns]', freq='H')
Zusätzlich zur Ortszeit können Sie auch eine Konvertierung durchführen um UTC-Zeit mit der Methode tz_convert(None) zu naivieren.
t_utc_naive = t.tz_convert(None) # Naive UTC time print(t_utc_naive) # Output: # DatetimeIndex(['2013-05-18 10:00:00', '2013-05-18 11:00:00'], dtype='datetime64[ns]', freq='H')
Die Methode tz_localize(None) ist im Vergleich zur Verwendung der datetime.replace-Lösung hocheffizient. Bei einem großen DateTimeIndex kann der Leistungsgewinn erheblich sein.
Das obige ist der detaillierte Inhalt vonWie konvertiert man den timezonenbewussten Pandas DateTimeIndex in naive Zeitstempel unter Beibehaltung der Zeitzone?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!