我有一個數據框,如下所示,並且我試圖減少數據框以僅包含日期大於變量curve_enddate
的行。 df['Date']
是在datetime
,因此我試圖轉換curve_enddate[i][0]
,它給出了一個形式2015-06-24
形式的字符串爲datetime
,但得到錯誤ValueError: time data '2015-06-24' does not match format '%Y-%b-%d'
。將字符串轉換爲日期時間時的ValueError
Date Maturity Yield_pct Currency
0 2015-06-24 0.25 na CAD
1 2015-06-25 0.25 0.0948511020 CAD
在那裏我得到了錯誤的行:
df = df[df['Date'] > time.strptime(curve_enddate[i][0], '%Y-%b-%d')]
謝謝
@PadraicCunnigham你是對the'time.struct_time tuple'問題。但是,我現在得到錯誤'TypeError:無法比較類型'str''的類型'時間戳'。你知道這是爲什麼嗎? – user131983
是的,您沒有將日期列轉換爲日期時間。你使用read_csv來創建df嗎? –
嘗試'df [df [「Date」]。apply(pd.to_datetime)> pd.to_datetime(curve_enddate [i] [0],'%Y-%m-%d')]]',如果您計劃使用日期很多,我會永久性地設置它們。如果您正在使用read_csv,請使用轉換器= {「Date」:pd.to_datetime}'投射到datetime –