Python statsmodel ARIMA вне выборочного прогнозирования с указанием одного раза => Key Error - PullRequest
0 голосов
/ 23 октября 2019

У меня есть фрейм данных input_df с индексом TimeDate;индекс имеет месячную частоту, но некоторые месяцы отсутствуют, и я хотел бы использовать statsmodels ARIMA для заполнения пробелов. Вот выдержка из кода:

input_df[ "trange" ] = input_df[ "tmax" ] - input_df[ "tmin" ]
valid_trange = input_df.loc[ input_df[ "trange" ].notnull(), "trange" ]
print( "valid_trange.head is:\n", valid_trange.head(), file = sys.stderr )
trange_model = ARIMA( valid_trange, ( 5, 1, 0 ) ).fit()
for index_date in input_df.index:
    if np.isnan( input_df.loc[ index_date, "trange" ] ):
        predicted_trange = trange_model.predict( start = index_date, end = index_date, typ = "levels" )

Вот то, что производит оператор print, который показывает некоторые пробелы:

valid_trange.head is:
1908-01-01    6.4
1908-02-01    5.4
1908-03-01    5.9
1908-06-01    9.0
1908-08-01    7.8
Name: trange, dtype: float64

Проблема с predictутверждение, которое приводит к следующей ошибке:

KeyError: 'only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices'

Я пробовал другие подходы для указания даты, для которой я хочу предсказать - использование числовых номеров строк вместо дат, использование аргумента exog= для прогнозированияи т. д. - но все выдают ошибки.

...