Доверительные интервалы для прогнозирования модели
Я следую вместе с учебником statsmodels
Модель OLS оснащена
formula = 'S ~ C(E) + C(M) + X'
lm = ols(formula, salary_table).fit()
print lm.summary()
Прогнозируемые значения предоставляются через:
lm.predict({'X' : [12], 'M' : [1], 'E' : [2]})
Результат возвращается в виде массива с одним значением.
Есть ли способ также вернуть доверительные интервалы для прогнозируемого значения (интервалы прогнозирования) в statsmodels?
Благодарю.
2 ответа
Мы стремились сделать это проще. Вы должны быть в состоянии использовать
from statsmodels.sandbox.regression.predstd import wls_prediction_std
prstd, iv_l, iv_u = wls_prediction_std(results)
Если у вас есть какие-либо проблемы, пожалуйста, напишите проблему на github.
Кроме того, вы можете попробовать использовать метод get_prediction.
values_to_predict = pd.DataFrame({'X' : [12], 'M' : [1], 'E' : [2]})
predictions = result.get_prediction(values_to_predict)
predictions.summary_frame(alpha=0.05)
Я нашел метод summary_frame(), похороненный здесь, и вы можете найти метод get_prediction() здесь. Вы можете изменить уровень значимости доверительного интервала и интервала прогнозирования, изменив параметр "альфа".