โมเดลที่คุณกำลังทำงานด้วยจะใช้แบบฟอร์ม
Yผม= μ + β1x1 ฉัน+ β2x2 ฉัน+ ϵผม (1)
โดยที่เป็นคำผิดพลาดที่สันนิษฐานว่ามาจากการแจกแจงแบบปกติที่มีค่าเฉลี่ยศูนย์εผม
μ , β 1และเบต้า 2μ^β^1β^2
ทีนี้ถ้าคุณแก้ไขค่า covariate ภายในช่วงของพวกมันให้พูดและx ⋆ 2 i , ค่าที่ทำนายสำหรับy ฉันจะได้จากการคำนวณx⋆1 ฉันx⋆2 ฉันYผม
Y⋆ผม= μ^+ β^1x⋆1 ฉัน+ β^2x⋆2 ฉัน (2)
หากแบบจำลองของคุณเหมาะสมกับข้อมูลของคุณอย่างสมบูรณ์แบบค่าที่คาดคะเนคือค่าจริง แต่โดยทั่วไปแล้วค่าไม่สามารถรับได้อย่างแน่นอนว่าเป็นการรวมกันแบบเส้นตรงของค่าx (" แบบจำลองทั้งหมดผิด แต่มีประโยชน์บางส่วน ") กล่าวอีกนัยหนึ่งความแปรปรวนของข้อผิดพลาดใน (1) ไม่ใช่ศูนย์โดยทั่วไป แต่โดยทั่วไปรูปแบบ (1) เป็นประมาณการที่ดีถ้าคลาดเคลื่อนY ฉัน - Y ⋆ ฉัน (หรือรุ่นที่ปรับขนาดของเหล่านี้) เป็น "เล็ก"YxYผม- y⋆ผม
แก้ไข
ในความคิดเห็นของคุณคุณถามว่าอะไรpredict()
จริง นี่คือตัวอย่างง่ายๆ
#generate a simple illustrative data set
> x <- runif(10)
> y <- 5 + 2.7 * x + rnorm(10, mean=0, sd=sqrt(0.15))
>
> #fit the model and store the coefficients
> regLin <- lm(y~x)
> coef <- coef(regLin)
>
> #use the predict() function
> y_star2 <- predict(regLin)
> #use equation (2)
> y_star1 <- coef[1] + coef[2] * x
> #compare
> cbind(y, y_star1, y_star2)
y y_star1 y_star2
1 7.100217 6.813616 6.813616
2 6.186333 5.785473 5.785473
3 7.141016 7.492979 7.492979
4 5.121265 5.282990 5.282990
5 4.681924 4.849776 4.849776
6 6.102339 6.106751 6.106751
7 7.223215 7.156512 7.156512
8 5.158546 5.253380 5.253380
9 7.160201 7.198074 7.198074
10 5.555289 5.490793 5.490793
x1
x2