Heim >Backend-Entwicklung >Python-Tutorial >Wie konvertiert man zwischen NumPy Datetime64-, Datetime- und Timestamp-Objekten?

Wie konvertiert man zwischen NumPy Datetime64-, Datetime- und Timestamp-Objekten?

Linda Hamilton
Linda HamiltonOriginal
2024-12-14 19:28:11463Durchsuche

How to Convert Between NumPy Datetime64, Datetime, and Timestamp Objects?

Konvertieren zwischen Numpy Datetime64-, Datetime- und Timestamp-Objekten

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.

Konvertieren von Datetime64 in Datetime oder Timestamp

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.

Konvertieren von Datetime oder Timestamp in Datetime64

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.

Beispielkonvertierung

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn