2016-04-29 177 views
2

步骤1:我的样本数据的Python Statsmodels x13_arima_analysis:AttributeError的: '快译通' 对象有没有属性 'iteritems'

import pandas as pd 
from pandas import Timestamp 

s = pd.Series(
    {Timestamp('2013-03-01 00:00:00'): 838.2, 
Timestamp('2013-04-01 00:00:00'): 865.17, 
Timestamp('2013-05-01 00:00:00'): 763.0, 
Timestamp('2013-06-01 00:00:00'): 802.99, 
Timestamp('2013-07-01 00:00:00'): 875.56, 
Timestamp('2013-08-01 00:00:00'): 754.4, 
Timestamp('2013-09-01 00:00:00'): 617.48, 
Timestamp('2013-10-01 00:00:00'): 994.75, 
Timestamp('2013-11-01 00:00:00'): 860.86, 
Timestamp('2013-12-01 00:00:00'): 786.66, 
Timestamp('2014-01-01 00:00:00'): 908.48, 
Timestamp('2014-02-01 00:00:00'): 980.88, 
Timestamp('2014-03-01 00:00:00'): 1453.73, 
Timestamp('2014-04-01 00:00:00'): 1473.33, 
Timestamp('2014-05-01 00:00:00'): 1480.44, 
Timestamp('2014-06-01 00:00:00'): 1433.91, 
Timestamp('2014-07-01 00:00:00'): 1386.58, 
Timestamp('2014-08-01 00:00:00'): 1437.35, 
Timestamp('2014-09-01 00:00:00'): 1207.07, 
Timestamp('2014-10-01 00:00:00'): 973.3, 
Timestamp('2014-11-01 00:00:00'): 962.18, 
Timestamp('2014-12-01 00:00:00'): 717.69, 
Timestamp('2015-01-01 00:00:00'): 873.06, 
Timestamp('2015-02-01 00:00:00'): 881.65, 
Timestamp('2015-03-01 00:00:00'): 1252.92, 
Timestamp('2015-04-01 00:00:00'): 866.94, 
Timestamp('2015-05-01 00:00:00'): 1498.05, 
Timestamp('2015-06-01 00:00:00'): 1282.31, 
Timestamp('2015-07-01 00:00:00'): 1411.33, 
Timestamp('2015-08-01 00:00:00'): 1379.05, 
Timestamp('2015-09-01 00:00:00'): 1334.52, 
Timestamp('2015-10-01 00:00:00'): 1231.86, 
Timestamp('2015-11-01 00:00:00'): 1088.14, 
Timestamp('2015-12-01 00:00:00'): 967.35, 
Timestamp('2016-01-01 00:00:00'): 1266.37, 
Timestamp('2016-02-01 00:00:00'): 1278.79, 
Timestamp('2016-03-01 00:00:00'): 1497.8, 
Timestamp('2016-04-01 00:00:00'): 1352.27}, 
    name='Cost') 

步骤2:我在Windows操作系统

下载 X-13ARIMA-SEATS Seasonal Adjustment Program到我的下载文件夹

步骤3:在Python的IDLE IDE,我改变了我的电流路径,这个节目的居住地:

import os 
os.chdir(r'C:\Users\owner\Downloads\x13asall_V1.1_B26\x13as') 

步骤4:我进口statsmodels并尝试运行x13_arima_analysis如下:

import statsmodels.api as sm 
sm.tsa.x13_arima_analysis(s) 

错误接收:

Traceback (most recent call last): 
    File "<pyshell#104>", line 1, in <module> 
    sm.tsa.x13_arima_analysis(s) 
    File "C:\Python34\lib\site-packages\statsmodels-0.6.1-py3.4-win-amd64.egg\statsmodels\tsa\x13.py", line 417, in x13_arima_analysis 
    spec_obj = pandas_to_series_spec(endog) 
    File "C:\Python34\lib\site-packages\statsmodels-0.6.1-py3.4-win-amd64.egg\statsmodels\tsa\x13.py", line 310, in pandas_to_series_spec 
    stperiod)) 
    File "C:\Python34\lib\site-packages\statsmodels-0.6.1-py3.4-win-amd64.egg\statsmodels\tsa\x13.py", line 271, in __init__ 
    title=title, name=series_name, 
    File "C:\Python34\lib\site-packages\statsmodels-0.6.1-py3.4-win-amd64.egg\statsmodels\tsa\x13.py", line 218, in set_options 
    for key, value in kwargs.iteritems(): 
AttributeError: 'dict' object has no attribute 'iteritems' 

请注意,我已经安装statsmodels的unofficial binaries(因为这是不可能的安装在我的Windows机器上),所以我不认为我可以改变实际的源,但我确实看到问题是here on this line

我在做这个错误还是这是statsmodels内的错误?

我有什么版本的statsmodels? 0.6.1

>>> sm.__spec__ 
ModuleSpec(name='statsmodels.api', loader=<_frozen_importlib.SourceFileLoader object at 0x0000000007193470>, origin='C:\\Python34\\lib\\site-packages\\statsmodels-0.6.1-py3.4-win-amd64.egg\\statsmodels\\api.py') 
+0

东西seemf断,通常类型的字典具有'iteritems'操作者,通过'打印dict.iteritem'检查:''<方法 'iteritems' 的'dict'objects>' –

回答

0

不知道我是否应该关闭这个问题,或保持它给其他人参考,随着越来越x13_arima_analysis工作努力。总而言之,我通过修改了几行来完成工作......但最终,我建议首先访问Github,并使用latest Github code替换位于机器上的C:\Python34\Lib\site-packages\statsmodels-0.6.1-py3.4-win-amd64.egg\statsmodels‌​\tsa文件中的x13.py文件,以查看它是否修复了该文件为你。它为我解决它。

工作实施例中的操作:

import pandas as pd 
from pandas import Timestamp 
import os 
import matplotlib.pyplot as plt 
import statsmodels.api as sm 

PATH =r'C:\Users\owner\Downloads\x13asall_V1.1_B26\x13as' 

os.chdir(PATH) 

s = pd.Series(
    {Timestamp('2013-03-01 00:00:00'): 838.2, 
Timestamp('2013-04-01 00:00:00'): 865.17, 
Timestamp('2013-05-01 00:00:00'): 763.0, 
Timestamp('2013-06-01 00:00:00'): 802.99, 
Timestamp('2013-07-01 00:00:00'): 875.56, 
Timestamp('2013-08-01 00:00:00'): 754.4, 
Timestamp('2013-09-01 00:00:00'): 617.48, 
Timestamp('2013-10-01 00:00:00'): 994.75, 
Timestamp('2013-11-01 00:00:00'): 860.86, 
Timestamp('2013-12-01 00:00:00'): 786.66, 
Timestamp('2014-01-01 00:00:00'): 908.48, 
Timestamp('2014-02-01 00:00:00'): 980.88, 
Timestamp('2014-03-01 00:00:00'): 1453.73, 
Timestamp('2014-04-01 00:00:00'): 1473.33, 
Timestamp('2014-05-01 00:00:00'): 1480.44, 
Timestamp('2014-06-01 00:00:00'): 1433.91, 
Timestamp('2014-07-01 00:00:00'): 1386.58, 
Timestamp('2014-08-01 00:00:00'): 1437.35, 
Timestamp('2014-09-01 00:00:00'): 1207.07, 
Timestamp('2014-10-01 00:00:00'): 973.3, 
Timestamp('2014-11-01 00:00:00'): 962.18, 
Timestamp('2014-12-01 00:00:00'): 717.69, 
Timestamp('2015-01-01 00:00:00'): 873.06, 
Timestamp('2015-02-01 00:00:00'): 881.65, 
Timestamp('2015-03-01 00:00:00'): 1252.92, 
Timestamp('2015-04-01 00:00:00'): 866.94, 
Timestamp('2015-05-01 00:00:00'): 1498.05, 
Timestamp('2015-06-01 00:00:00'): 1282.31, 
Timestamp('2015-07-01 00:00:00'): 1411.33, 
Timestamp('2015-08-01 00:00:00'): 1379.05, 
Timestamp('2015-09-01 00:00:00'): 1334.52, 
Timestamp('2015-10-01 00:00:00'): 1231.86, 
Timestamp('2015-11-01 00:00:00'): 1088.14, 
Timestamp('2015-12-01 00:00:00'): 967.35, 
Timestamp('2016-01-01 00:00:00'): 1266.37, 
Timestamp('2016-02-01 00:00:00'): 1278.79, 
Timestamp('2016-03-01 00:00:00'): 1497.8, 
Timestamp('2016-04-01 00:00:00'): 1352.27}, 
    name='Cost') 


res = sm.tsa.x13_arima_analysis(s) 
res.plot() 
plt.show() 

enter image description here

+0

嗨,我使用的是一个用于python的Anaconda前端。你能告诉我如何为我的情况实现x13。在窗户上 – Nck

相关问题