回归输出中的 .hat 是什么

机器算法验证 r 回归 杠杆作用
2022-03-24 00:51:05

augment()R 的 broom 包中的函数从回归模型创建预测值的数据框创建的列包括拟合值、拟合标准误差和库克距离。它们还包括一些我不熟悉的东西,那就是 column .hat

谁能解释这个值是什么,线性回归和逻辑回归之间有什么不同吗?

library(broom)
data(mtcars)

m1 <- lm(mpg ~ wt, data = mtcars)

head(augment(m1))

          .rownames  mpg    wt  .fitted   .se.fit     .resid       .hat   .sigma      .cooksd
1         Mazda RX4 21.0 2.620 23.28261 0.6335798 -2.2826106 0.04326896 3.067494 1.327407e-02
2     Mazda RX4 Wag 21.0 2.875 21.91977 0.5714319 -0.9197704 0.03519677 3.093068 1.723963e-03
3        Datsun 710 22.8 2.320 24.88595 0.7359177 -2.0859521 0.05837573 3.072127 1.543937e-02
4    Hornet 4 Drive 21.4 3.215 20.10265 0.5384424  1.2973499 0.03125017 3.088268 3.020558e-03
5 Hornet Sportabout 18.7 3.440 18.90014 0.5526562 -0.2001440 0.03292182 3.097722 7.599578e-05
6           Valiant 18.1 3.460 18.79325 0.5552829 -0.6932545 0.03323551 3.095184 9.210650e-04
1个回答

这些将是帽子矩阵的对角元素,描述了每个点对其拟合值的影响。

如果一个适合Y=Xβ+ϵ然后H=X(XTX)1XT.

在这个例子中:

(Y1Y32)=(12.62012.780)(β0β1)+(ϵ1ϵ32)

然后计算这个H矩阵导致:

library(MASS)
wt <- mtcars[,6]

X <- matrix(cbind(rep(1,32),wt), ncol=2)

X%*%ginv(t(X)%*%X)%*%t(X)

最后一个矩阵是32×32矩阵并在对角线上包含这些帽子值。

维基百科上的帽子矩阵

有趣的事实

它被称为帽子矩阵,因为它把帽子放在Y

Y^=HY