我正在嘗試使用python找到學生化和PRESS殘差的多元迴歸模型。在這種情況下,我有以下數據:如何在多元線性迴歸模型中找到學生化和PRESS殘差
X1 X2 Y
14 25 301
19 32 327
12 22 246
11 15 187
與擬合模型爲:Y = 80.93-5.84 X1 + X2 11.32和MSresidual:574.9 我寫了下面的代碼,以找到那些殘留物。
import math
def lin_model(X1, X2):
Y_hat = 80.93 - 5.84 * X1 + 11.32 * X2
return Y_hat
MSresiduals = 574.9
X1 = [14, 19, 12, 11]
X2 = [25, 32, 22, 15]
Y=[301, 327, 246, 187]
i=0
hii = 0
print('Residual Standardized_Residual Studentized_Residual PRESS_Residual')
for z in Y:
err = z - lin_model(X1[i],X2[i])
sd_r = err/math.sqrt(MSresiduals)
st_r = err/math.sqrt(MSresiduals * (1 - hii))
press_r = err/(1-hii)
print(err,' ',sd_r,' ', st_r,' ',press_r)
i+=1
但HII值是不知道我。 hii是帽子矩陣的對角元素。但我無法弄清楚如何實現帽子矩陣並獲得hii的價值。有人請幫助我從給定的數據中找出hii的值,以便我可以使用代碼中的上述公式計算studentized和Press residual。這裏st_r被studentized,press_r是PRESS殘差。我不想使用任何python庫。提前致謝。