简体   繁体   中英

Confidence intervals for model prediction

I am following along with a statsmodels tutorial

An OLS model is fitted with

formula = 'S ~ C(E) + C(M) + X' 
lm = ols(formula, salary_table).fit()
print lm.summary()

Predicted values are provided through:

lm.predict({'X' : [12], 'M' : [1], 'E' : [2]})

The result is returned as a single value array.

Is there a method to also return confidence intervals for the predicted value (prediction intervals) in statsmodels?

Thanks.

We've been meaning to make this easier to get to. You should be able to use

from statsmodels.sandbox.regression.predstd import wls_prediction_std
prstd, iv_l, iv_u = wls_prediction_std(results)

If you have any problems, please file an issue on github.

additionally you can try to use the get_prediction method.

values_to_predict = pd.DataFrame({'X' : [12], 'M' : [1], 'E' : [2]})
predictions = result.get_prediction(values_to_predict)
predictions.summary_frame(alpha=0.05)

I found the summary_frame() method buried here and you can find the get_prediction() method here . You can change the significance level of the confidence interval and prediction interval by modifying the "alpha" parameter.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM