我有一列日期。它們都是同一個日期。如何為該列中的每個日期值增加 1 天?
這是我的代碼:
aday = dt.timedelta(days=1)
datetickerdf = pd.read_csv('datesandtickers.csv')
datetickerdf = pd.DataFrame(datetickerdf, columns=["ticker","date"])
datetickerdf['date'] = datetickerdf['date'] aday
datetickerdf
我收到此錯誤:“ 不支持的運算元型別:'Timedelta' 和 'str'”
如何將“aday”轉換為可用于 運算子的內容?我想為我的專欄中的所有日期添加額外的一天。
uj5u.com熱心網友回復:
您需要將字串轉換為日期物件。一旦您的字串是日期物件,您就可以應用時間增量,然后將新的日期物件轉換回字串。
#Assuming datetickerdf['date'] is something like 21 June, 2018
#My Delta
aday = dt.timedelta(days=1)
#The date in the file converted to a date object
fileday = dt.datetime.strptime(datetickerdf['date'], "%d %B, %Y")
#New date calculated with delta
newday = fileday aday
#Write it back to a file
datetickerdf['date'] = newday.strftime("%d %B, %Y")
使用此頁面獲取正確的格式字串以決議和重寫字串https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
uj5u.com熱心網友回復:
用于pd.Timedelta創建 datetimelike 一天
datetickerdf['date'] = datetickerdf['date'] pd.Timedelta(days=1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/459845.html
