Lorsque vous travaillez avec des horodatages et des dates en Python, il est souvent nécessaire d'effectuer une conversion entre différents types de données. Cela inclut la conversion entre les objets numpy.datetime64, datetime.datetime et datetime64.
Pour convertir un objet numpy.datetime64 dt64 en un objet datetime.datetime dt , utilisez simplement dt = dt64.astype(datetime.datetime). Notez que les informations de fuseau horaire peuvent ne pas être conservées dans cette conversion.
De même, pour convertir dt64 en un objet datetime.Timestamp ts, utilisez ts = pd.Timestamp(dt64). Cela garantira que les informations de fuseau horaire sont conservées.
Pour convertir un objet datetime.datetime dt en un objet numpy.datetime64 dt64, utilisez dt64 = np. dateheure64(dt). Cela créera un objet datetime64 avec le même horodatage que dt.
Pour convertir un objet datetime.Timestamp ts en un objet numpy.datetime64 dt64, utilisez dt64 = ts.timestamp().astype(np.datetime64) . Cela créera un objet datetime64 avec le même horodatage et le même fuseau horaire que ts.
Considérez l'exemple suivant :
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))
Cela affichera :
2012-05-01 00:00:00 <Timestamp: 2012-05-01 00:00:00+00:00>
Notez que les informations de fuseau horaire ont été conservées lors de la conversion de dt64 en Timestamp, mais perdues lors de la conversion à datetime.datetime.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!