У объекта 'SARIMAXResults' нет атрибута '_params_ma - PullRequest
0 голосов
/ 31 октября 2018

Я пытаюсь создать сезонную модель ARIMA, используя класс statsmodels.statespace.sarimax.SARIMA, и модель, кажется, хорошо создана. The JPEG of SARIMA Model summary

Теперь я хочу передать коэффициенты AR и MA в переменные по отдельности, но появляется ошибка, что: SARIMAXResults объект не имеет атрибута _params_ma. The JPEG of error

Что я должен сделать, чтобы исправить ошибку?

Ответы [ 2 ]

0 голосов
/ 12 ноября 2018

Что ж, после просмотра кода источника, другая проблема, добавленная в комментарии, также решается.

На самом деле, необходимо добавить круглые скобки для вызова атрибута SARIMAXResults, поэтому cov_params() покажет матрицу ковариационной дисперсии следующим образом: матрица cov_params

Далее, для расчета матрицы корреляции параметров, я кодировал следующее:

# Step1: Pass the covariance-variance matrix to a specified DataFrame
df_cov = final_result.cov_params()
# Step2: Creat a blank DataFrame which will be used to store correlation values
coef_name = [r'$b_1$',r'$b_2$',r'$\theta_1$',r'$\phi_{12}$',r'$\phi_{24}$']
cor_df = pd.DataFrame(index=coef_name,columns=coef_name)
cor_df.loc[:,:]=''
# Step3: Loop the covariance-variance matrix and calculate the correlation
var=[0]*5
for i in range(5):
    var[i] = df_cov.iloc[i,i]
for i in range(5):
    for j in range(5):
        if j<=i:
            corvar = df_cov.iloc[i,j] 
            cor = corvar/np.sqrt(var[i]*var[j])
            cor_df.iloc[i,j] = round(cor,2)
        else:
            continue
# Step4: Show the correlation matrix(as type of DataFrame)
cor_df

Наконец, матрица корреляции хорошо рассчитывается, как показано ниже: корреляционная матрица

Спасибо за внимание, больше вопросов нет.

0 голосов
/ 01 ноября 2018

Finnaly, я считаю, что это была моя вина.

Следуя моей модели SARIMA (2,0,0) X (0,0,1,12), несезонный элемент имеет порядки (p, d, q) = (2,0,0), и сезонный элемент имеет порядки (P, D, Q, s) = (0,0,1,12). Таким образом, модель говорит, что данные имеют несезонный паттерн AR (2) и сезонный паттерн MA (1) _12. В результате коэффициент несезонной картины МА, соответствующий SARIMAXResults.maparams, не будет оцениваться. Напротив, коэффициент сезонного MA partter, который соответствует SARIMAXResults.seasonalmaparams, будет оценен.

Для получения расчетного значения коэффициента сезонного паттерна МА мне следует вызвать метод seasonalmaparams() вместо maparams().

Проблема с ошибками теперь решена. : D

...