KeyError: 'prob' при запуске прогнозирования ARIMAX в python - PullRequest
0 голосов
/ 22 октября 2018

Мои данные выглядят примерно так:

APE ProjectId prob Total_Status Client_Satisfaction_Status

2017-07-02 10097 -0.444666 1.42627 0.92406

2017-07-09 10097 -0,444666 1,42627 0,92406

2017-07-16 10097 -0,444666 1,42627 0,92406

2017-07-23 10097 -0,444666 1,42627 0,92406

2017-07-30 10097 -0,444666 1,426270.92406

Я запустил модель ARIMAX

model = pf.ARIMAX(data=ts_data_1ID_1, formula='prob~Overall_Status+Client_Satisfaction_Status', ar=1, ma=1, family=pf.Normal())

Теперь я пытаюсь предсказать значение на следующую неделю:

model.predict(h=1, oos_data=ddata.iloc[-10:])

Но это дает мне KeyError: 'prob '

KeyError                                  Traceback (most recent call last)
~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
   3077             try:
-> 3078                 return self._engine.get_loc(key)
   3079             except KeyError:

pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()

pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()

pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()

pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()

KeyError: 'prob'

During handling of the above exception, another exception occurred:

KeyError                                  Traceback (most recent call last)
<ipython-input-120-5c29b22fc8ef> in <module>()
----> 1 model.predict(h=1, oos_data=ddata.iloc[-10:])
      2 #model.plot_predict_is
      3 #forecast = model.predict()[0]

~\AppData\Local\Continuum\anaconda3\lib\site-packages\pyflux\arma\arimax.py in predict(self, h, oos_data, intervals)
    930 
    931             dep_var = self.formula.split("~")[0]
--> 932             oos_data[dep_var] = oos_data[dep_var].replace(np.nan, 0)
    933 
    934             _, X_oos = dmatrices(self.formula, oos_data)

~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\frame.py in __getitem__(self, key)
   2686             return self._getitem_multilevel(key)
   2687         else:
-> 2688             return self._getitem_column(key)
   2689 
   2690     def _getitem_column(self, key):

~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\frame.py in _getitem_column(self, key)
   2693         # get column
   2694         if self.columns.is_unique:
-> 2695             return self._get_item_cache(key)
   2696 
   2697         # duplicate columns & possible reduce dimensionality

~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\generic.py in _get_item_cache(self, item)
   2487         res = cache.get(item)
   2488         if res is None:
-> 2489             values = self._data.get(item)
   2490             res = self._box_item_values(item, values)
   2491             cache[item] = res

~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\internals.py in get(self, item, fastpath)
   4113 
   4114             if not isna(item):
-> 4115                 loc = self.items.get_loc(item)
   4116             else:
   4117                 indexer = np.arange(len(self.items))[isna(self.items)]

~\AppData\Local\Continuum\anaconda3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
   3078                 return self._engine.get_loc(key)
   3079             except KeyError:
-> 3080                 return self._engine.get_loc(self._maybe_cast_indexer(key))
   3081 
   3082         indexer = self.get_indexer([key], method=method, tolerance=tolerance)

pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()

pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()

pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()

pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()

KeyError: 'prob'

Может кто-нибудь помочь мне разобраться в чем проблема?

...