我是python的初學者,我有一個csv檔案,里面有一年的資料,從1/1/2000開始,我想把資料的開始日期轉換成一個指定的日期,26/08/2020。 我目前的代碼替換了日期,但它是從1/1/2020開始,而不是26/08/2020
。startdate = pd.to_datetime(startdate, dayfirst = True)
data[date] = pd.to_datetime(data[date])
data[date] = [f.replace(year = startdate.year) for f in data[date] ]
data = data.set_index(date)
data = data.astype('float')
我想知道是否有辦法將開始日期與給定的資料集相匹配,所以如果我的開始日期是在1/8/2018,我從1/8/2000開始替換csv檔案中的資料,所以最終的日期范圍將是從1/8/2018到31/8/2019。
輸入:
01/01/2000 00:000
01/01/2000 01:000
.........
31/12/2000 23:000
預期產出
26/08/2018 00:000
26/08/2018 01:000
. . . . .
26/08/2019 23:000
謝謝你的幫助:)
uj5u.com熱心網友回復:
pd.to_datetime(timestamps,day_first=True) datetime.timedelta(days=664249)
我相信會得到你想要的......只是用日期的差異來抵消它
。uj5u.com熱心網友回復:
類似這樣:
import pandas as pd
date_old = pd.to_datetime("01/01/2000 00:000")
date_new = pd.to_datetime("26/08/2018 00:000")
delta = date_new - date_old
天 = 366
result = [date_old delta pd.Timedelta(days=days) for day in range(days)]
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/309340.html
標籤:
