多元线性回归例子



blood<-data.frame(
  X1=c(76.0, 91.5, 85.5, 82.5, 79.0, 80.5, 74.5,
       79.0, 85.0, 76.5, 82.0, 95.0, 92.5),
  X2=c(50, 20, 20, 30, 30, 50, 60, 50, 40, 55,
       40, 40, 20),
  Y= c(120, 141, 124, 126, 117, 125, 123, 125,132, 123, 132, 155, 147)
)
lm.sol<-lm(Y ~ X1+X2, data=blood)
summary(lm.sol)
new <- data.frame(X1=80, X2=40)  #求多元回归预测并给出相应的预测区间
lm.pred<-predict(lm.sol, new, interval="prediction", level=0.95)
lm.pred

Call:
lm(formula = Y ~ X1 + X2, data = blood)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.0404 -1.0183  0.4640  0.6908  4.3274 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) -62.96336   16.99976  -3.704 0.004083 ** 
X1            2.13656    0.17534  12.185 2.53e-07 ***
X2            0.40022    0.08321   4.810 0.000713 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.854 on 10 degrees of freedom
Multiple R-squared:  0.9461,	Adjusted R-squared:  0.9354 
F-statistic: 87.84 on 2 and 10 DF,  p-value: 4.531e-07

> new <- data.frame(X1=80, X2=40)  #求多元回归预测并给出相应的预测区间
> lm.pred<-predict(lm.sol, new, interval="prediction", level=0.95)
> lm.pred
       fit      lwr      upr
1 123.9699 117.2889 130.6509

你可能感兴趣的:(多元线性回归例子)