[R-sig-eco] Calculate Prediction Interval for Regression by hand...

Ben Bolker bbolker at gmail.com
Tue Oct 25 04:20:23 CEST 2011


Johannes Radinger <JRadinger at ...> writes:

> thank you all for you tips with predict, predict.lm etc.
> >From summary(lm-model), I can get the Estimate and the Standard
> Error for intercept and slopes. With confint I can get confidence
> intervals (?) for these parameters for different levels.
> 
> I want to calculate it by hand, rather then by using R's predict
> function, due to some reasons:
> 
> 1) I want to get the mathematical background
> 2) I want to use it in a model outside of grass (python-model, and
> I don't want to use a direct interaction python-R)
> 3) I want to calculate it with simple 
> programming languages (e.g. simplest form of basic etc.)
> 
> In wikipedia it says that it is possible to 
> calculate the prediction interval from the standard error of the
> parameters. So how is that done exactly? Can anyone guide me 
> to the formula? Or is it just 
> 
> Y=b+Intercept + (a1+SE(a1))*X1+(a2+SE(a2)*X2 
> (of course with all variations in plus and minus SE)?
> 
> Your help is greatly appreciated!
> 
> /johannes
> 

 [snip]

  You need to take the covariance of the parameters into account.
Suppose you want to calculate the prediction interval for values
X1=a1, X2=a2.  Form a vector X=c(1,a1,a2) (the first term is for
the intercept).  If you (matrix) multiply this by your parameter vector
beta (X %*% beta), i.e. beta_0 + beta_1*a1+beta_2*a2 
you get your predicted value.  If you have variance-covariance
matrix V for the intercept and slopes (a 3x3 symmetric matrix)
then the variance of the prediction is X %*% V %*% X^T.
  Code following this approach can be found at http://glmm.wikidot.com/faq .



More information about the R-sig-ecology mailing list