【发布时间】:2019-07-04 21:59:06
【问题描述】:
在拟合 statsmodel 时,我收到有关日期频率的警告。
首先,我导入一个数据集:
import statsmodels as sm
df = sm.datasets.get_rdataset(package='datasets', dataname='airquality').data
df['Year'] = 1973
df['Date'] = pd.to_datetime(df[['Year', 'Month', 'Day']])
df.drop(columns=['Year', 'Month', 'Day'], inplace=True)
df.set_index('Date', inplace=True, drop=True)
接下来我尝试拟合 SES 模型:
fit = sm.tsa.api.SimpleExpSmoothing(df['Wind']).fit()
返回此警告:
/anaconda3/lib/python3.6/site-packages/statsmodels/tsa/base/tsa_model.py:171:ValueWarning:未提供频率信息,因此将使用推断的频率 D。 % 频率,值警告)
我的数据集是每天的,所以推断“D”没问题,但我想知道如何手动设置频率。
请注意,DatetimeIndex 没有频率(最后一行)...
DatetimeIndex(['1973-05-01', '1973-05-02', '1973-05-03', '1973-05-04',
'1973-05-05', '1973-05-06', '1973-05-07', '1973-05-08',
'1973-05-09', '1973-05-10',
...
'1973-09-21', '1973-09-22', '1973-09-23', '1973-09-24',
'1973-09-25', '1973-09-26', '1973-09-27', '1973-09-28',
'1973-09-29', '1973-09-30'],
dtype='datetime64[ns]', name='Date', length=153, freq=None)
根据this answer,我检查了缺少的日期,但似乎没有:
pd.date_range(start = '1973-05-01', end = '1973-09-30').difference(df.index)
DatetimeIndex([], dtype='datetime64[ns]', freq='D')
我应该如何设置索引的频率?
【问题讨论】:
标签: pandas