如何將 Pandas 偏移量轉換為 Python 日期?


在本文中,我們將 pandas 偏移量轉換為 Python 中的日期。當您從日期物件中減去 pandas 時,您將得到一個 pandas Timestamp 物件。您可以將此物件轉換為字串格式日期或日期物件(標準 Python 日期)。或者,您可以使用 datetime 庫中的 timedelta 物件。

示例 1

在以下示例程式碼中,我們使用 pandas pd.to_datetime('2018-01-04') 中的 to_offset("10D") 刪除 10 天的偏移量。

from pandas.tseries.frequencies import to_offset import pandas as pd dt = pd.to_datetime('2018-01-04') - to_offset("10D") print(type(dt)) print(dt)

輸出

以上程式碼的輸出如下所示。

<class 'pandas._libs.tslibs.timestamps.Timestamp'>
2017-12-25 00:00:00

在上面的輸出中,我們可以觀察到“dt”變數是一個字串。要將此字串轉換為給定格式,您可以使用 strftime。要將此字串轉換為日期物件,您可以使用 date() 函式。

示例 2

在以下示例程式碼中,我們使用 strftime() 方法將字串“2017-12-25 00:00:00”轉換為“yy-mm-dd”格式。要將此字串轉換為日期物件,我們使用 date() 函式。

from pandas.tseries.frequencies import to_offset import pandas as pd dt = pd.to_datetime('2018-01-04') - to_offset("10D") print(dt.strftime('%Y-%m-%d')) print(dt.date()) print(type(dt.date()))

輸出

以下是上述程式碼的輸出;

2017-12-25
2017-12-25
<class 'datetime.date'>

示例 3

以下是使用 Pandas Delta 將 Pandas 偏移量轉換為 Python 日期

from pandas.tseries.frequencies import to_offset import pandas as pd dt = pd.to_datetime('2018-01-04') - pd.Timedelta('10D') print(dt.strftime('%Y-%m-%d')) print(dt.date()) print(type(dt.date()))

輸出

2017-12-25
2017-12-25

示例 4

除了Timedelta(),我們還可以使用to_timedelta()

from pandas.tseries.frequencies import to_offset import pandas as pd dt = pd.to_datetime('2022-09-10') - pd.to_timedelta('10D') print(dt.date())

輸出

2022-08-31

更新於: 2022年9月7日

540 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.