Bei der Arbeit mit Zeitstempeln und Datumsangaben in Python ist es oft notwendig, zwischen verschiedenen Datentypen zu konvertieren. Dazu gehört die Konvertierung zwischen numpy.datetime64-, datetime.datetime- und datetime64-Objekten.
So konvertieren Sie ein numpy.datetime64-Objekt dt64 in ein datetime.datetime-Objekt dt , verwenden Sie einfach dt = dt64.astype(datetime.datetime). Beachten Sie, dass die Zeitzoneninformationen bei dieser Konvertierung möglicherweise nicht erhalten bleiben.
Um dt64 in ein datetime.Timestamp-Objekt ts zu konvertieren, verwenden Sie auf ähnliche Weise ts = pd.Timestamp(dt64). Dadurch wird sichergestellt, dass die Zeitzoneninformationen beibehalten werden.
Um ein datetime.datetime-Objekt dt in ein numpy.datetime64-Objekt dt64 zu konvertieren, verwenden Sie dt64 = np. datetime64(dt). Dadurch wird ein datetime64-Objekt mit demselben Zeitstempel wie dt erstellt.
Um ein datetime.Timestamp-Objekt ts in ein numpy.datetime64-Objekt dt64 zu konvertieren, verwenden Sie dt64 = ts.timestamp().astype(np.datetime64) . Dadurch wird ein datetime64-Objekt mit demselben Zeitstempel und derselben Zeitzone wie ts erstellt.
Betrachten Sie das folgende Beispiel:
import datetime import numpy as np import pandas as pd dt = datetime.datetime(2012, 5, 1) ts = pd.DatetimeIndex([dt])[0] dt64 = np.datetime64(dt) print(dt64.astype(datetime.datetime)) print(pd.Timestamp(dt64))
Dies wird Folgendes ausgeben:
2012-05-01 00:00:00 <Timestamp: 2012-05-01 00:00:00+00:00>
Beachten Sie, dass die Zeitzoneninformationen bei der Konvertierung von dt64 in Timestamp erhalten blieben, bei der Konvertierung jedoch verloren gingen Konvertierung in datetime.datetime.
Das obige ist der detaillierte Inhalt vonWie konvertiert man zwischen NumPy Datetime64-, Datetime- und Timestamp-Objekten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!