在datetime、Timestamp 和datetime64 之間進行轉換
在處理資料時,通常需要在不同時間表示形式之間進行轉換。常見的場景是在 numpy.datetime64、datetime.datetime 和 Timestamp 物件之間進行轉換。
numpy.datetime64 是表示奈秒精確度的日期和時間的 NumPy 物件。若要將 datetime.datetime 或 Timestamp 物件轉換為 datetime64,可以使用 np.datetime64() 建構子。
datetime.datetime 是一個表示微秒日期和時間的 Python 物件精確。若要從 datetime64 或 Timestamp 物件取得 datetime.datetime,請使用對應物件的 to_datetime() 方法。
Timestamp 是表示奈秒精確度的日期和時間的 Pandas 物件。若要從 datetime.datetime 或 datetime64 物件建立時間戳,您可以使用 pd.Timestamp() 建構子。
作為範例,請考慮以下物件:
dt = datetime.datetime(2012, 5, 1) # A strange way to extract a Timestamp object, there's surely a better way? ts = pd.DatetimeIndex([dt])[0] dt64 = np.datetime64(dt)
要轉換這些不同表示之間的對象,您可以使用以下程式碼:
# Convert datetime64 to datetime datetime_from_dt64 = dt64.astype(datetime.datetime) # Convert Timestamp to datetime datetime_from_ts = ts.to_datetime() # Convert datetime to Timestamp timestamp_from_dt = pd.Timestamp(dt)
請記住,這些轉換可能會導致由於每種表示使用不同的時間尺度而導致精度損失。
以上是如何在Python中的「datetime」、「Timestamp」和「datetime64」之間進行轉換?的詳細內容。更多資訊請關注PHP中文網其他相關文章!