我需要從資料框中訪問日期范圍并在 period_range() 中指定 問題:即使我將字串作為引數傳遞,它也不起作用。請建議我哪里出錯了。
資料框
下面提到我嘗試的代碼:
import pandas as pd
import numpy as np
from datetime import datetime
datas=[['project1','26-06-2021','02-07-2021']]
cols=['project','startdate','enddate']
data1=pd.DataFrame(data=datas,columns=cols)
print(data1.head())
str1 =pd.to_datetime(data1['startdate'][0]).strftime('%Y-%m-%d')
str2 =pd.to_datetime(data1['enddate'][0]).strftime('%Y-%m-%d')
range=pd.period_range(str1,str2,freq='M')
print(range)
結果
PeriodIndex([], dtype='期間[M]')
uj5u.com熱心網友回復:
問題被str1決議為February,可能的解決方案是添加dayfirst=True引數:
str1 =pd.to_datetime(data1['startdate'][0], dayfirst=True).strftime('%Y-%m-%d')
str2 =pd.to_datetime(data1['enddate'][0], dayfirst=True).strftime('%Y-%m-%d')
r=pd.period_range(str1,str2,freq='M')
print(r)
PeriodIndex(['2021-06', '2021-07'], dtype='period[M]', freq='M')
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/493417.html
