Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python Statsmodels - AttributeError: 'ARMAResults' object has no attribute 'plot_predict'

I am trying to run the following Statsmodels example from http://statsmodels.sourceforge.net/devel/examples/notebooks/generated/tsa_arma_0.html.

fig, ax = plt.subplots(figsize=(12, 8))
ax = dta.ix['1950':].plot(ax=ax)
fig = arma_mod30.plot_predict('1990', '2012', dynamic=True, ax=ax, plot_insample=False)

Running the code above gives the error message below. Even after upgrading to Statsmodels 6, I am getting the same error.

    AttributeError                            Traceback (most recent call last)
    <ipython-input-69-2a5da9c756f0> in <module>()
          1 fig, ax = plt.subplots(figsize=(12, 8))
          2 ax = dta.ix['1950':].plot(ax=ax)
    ----> 3 fig = arma_mod30.plot_predict('1990', '2012', dynamic=True, ax=ax,         plot_insample=False)

C:\Anaconda\lib\site-packages\statsmodels\base\wrapper.pyc in __getattribute__(self, attr)
     33             pass
     34 
---> 35         obj = getattr(results, attr)
     36         data = results.model.data
     37         how = self._wrap_attrs.get(attr)

AttributeError: 'ARMAResults' object has no attribute 'plot_predict'

Any suggestions?

This issue has been resolved after following the below comment. Thanks.

like image 869
kevin Avatar asked Oct 23 '25 13:10

kevin


1 Answers

I've just encountered the same issue with statsmodels 0.13.2. After a bit of digging in their release notes I can see that the plotting functionality has been separated out. Instead of

arma_mod30.plot_predict(...)

try

from statsmodels.graphics.tsaplots import plot_predict


plot_predict(arma_mod30, ...)

Hope this helps

like image 79
virgesmith Avatar answered Oct 25 '25 02:10

virgesmith