【问题标题】:how to perform X-12-ARIMA statsmodels on resampled dataframe如何在重新采样的数据帧上执行 X-12-ARIMA statsmodels
【发布时间】:2017-08-12 10:13:05
【问题描述】:

我关注 statsmodels X-12-ARIMA 实现的this example,在我的情况下,我的数据框看起来像

668  2000/01/28 20:00:00  1.476667
669  2000/01/28 21:00:00  1.715498
670  2000/01/28 22:00:00  1.713599
671  2000/01/28 23:00:00  1.733763

我需要分析,我有两个月的数据,所以我想每月重新采样。我使用这种和平的代码:

df.index=pd.to_datetime(df.ts)
df=df.resample('M')
print df
res = sm.tsa.x13_arima_select_order(df.value)

我不确定是否理解 print 的输出:

DatetimeIndexResampler [freq=<MonthEnd>, axis=0, closed=right, label=right, convention=start, base=0]

以及最后一行代码的以下错误:

文件“home/.virtualenvs/local/lib/python2.7/site-packages/statsmodels-0.8.0-py2.7-linux-x86_64.egg/statsmodels/tsa/x13.py”,第 412 行,在 x13_arima_analysis raise ValueError("如果 endog 不是,则 start 和 freq 不能为 none" ValueError: 如果 endog 不是 pandas 对象,则 start 和 freq 不能为 none

我猜问题出在我的数据集中,但我无法弄清楚到底出了什么问题。你能帮我理解这个问题,以及我该如何处理这个错误吗?

【问题讨论】:

  • 重采样时,您希望如何聚合数据?和?意思是?其他?例如:df.resample('M').mean()

标签: python pandas statsmodels resampling


【解决方案1】:

试试这个:

df.ts = pd.to_datetime(df.ts)
res = df.set_index('ts')['value'].resample('M').apply(sm.tsa.x13_arima_select_order)

【讨论】:

  • 这段代码出现以下错误:ValueError: Only monthly and quarterly periods are supported. Please report or send a pull request if you want this extended.
猜你喜欢
  • 2019-11-01
  • 2017-09-19
  • 2019-04-15
  • 2018-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多