如何在R中提取線性模型的殘差和預測值?
殘差是實際值與預測值之間的差值,而預測值是線性模型對實際值的預測值。要從線性模型中提取殘差和預測值,我們需要使用resid和predict函式以及模型物件。
請考慮以下資料框:
示例
x1<-rnorm(20,14,3.25) y1<-rnorm(20,6,0.35) df1<-data.frame(x1,y1) df1
輸出
x1 y1 1 14.565652 6.506233 2 13.350634 6.481486 3 8.636661 5.806754 4 11.495087 6.164963 5 12.159347 6.749101 6 16.642371 6.061237 7 9.137345 6.121711 8 12.616223 5.911341 9 10.109950 5.819494 10 15.953629 6.067601 11 13.579602 6.438686 12 14.708544 5.175576 13 19.234206 6.926994 14 13.539790 5.669169 15 15.101462 6.253202 16 13.812982 6.042699 17 12.680245 6.019822 18 15.292250 6.174533 19 12.759720 5.648624 20 11.371360 5.879896
建立x1和y1之間的線性模型:
Model1<-lm(y1~x1,data=df1)
從Model1中查詢殘差和預測值:
resid(Model1)
1 2 3 4 5 6 0.34576809 0.38483276 -0.04232628 0.16576122 0.71501218 -0.20829562 7 8 9 10 11 12 0.24633525 -0.14674241 -0.10696233 -0.16575896 0.33000726 -0.99239332 13 14 15 16 17 18 0.52134132 -0.43741908 0.06459654 -0.07823690 -0.04162379 -0.02409178 19 20 -0.41699579 -0.11280836 > predict(Model1) 1 2 3 4 5 6 7 8 6.160465 6.096654 5.849080 5.999202 6.034088 6.269532 5.875376 6.058083 9 10 11 12 13 14 15 16 5.926456 6.233360 6.108679 6.167970 6.405653 6.106588 6.188605 6.120936 17 18 19 20 6.061445 6.198625 6.065619 5.992704
示例
x2<-rpois(20,5) y2<-rpois(20,2) df2<-data.frame(x2,y2) df2
輸出
x2 y2 1 7 0 2 5 1 3 3 1 4 3 2 5 6 3 6 2 8 7 4 2 8 6 0 9 9 1 10 3 0 11 4 3 12 7 1 13 6 2 14 6 0 15 5 2 16 9 1 17 5 3 18 5 2 19 6 5 20 7 0
建立x2和y2之間的線性模型:
Model2<-lm(y2~x2,data=df2)
從Model2中查詢殘差和預測值:
resid(Model2)
1 2 3 4 5 6 -1.15697674 -1.02325581 -1.88953488 -0.88953488 1.40988372 4.67732558 7 8 9 10 11 12 -0.45639535 -1.59011628 0.70930233 -2.88953488 0.54360465 -0.15697674 13 14 15 16 17 18 0.40988372 -1.59011628 -0.02325581 0.70930233 0.97674419 -0.02325581 19 20 3.40988372 -1.15697674
predict(Model2)
1 2 3 4 5 6 7 8 1.1569767 2.0232558 2.8895349 2.8895349 1.5901163 3.3226744 2.4563953 1.5901163 9 10 11 12 13 14 15 16 0.2906977 2.8895349 2.4563953 1.1569767 1.5901163 1.5901163 2.0232558 0.2906977 17 18 19 20 2.0232558 2.0232558 1.5901163 1.1569767
廣告