Regression

線性回歸 + 混雜

  • June 23, 2017

假設我想訪問結果Y和由混雜因素Z調整的變量X之間的效應大小和顯著性。

我的問題是,如果確定以下場景之間X的影響大小和顯著性是否有任何差異。

  1. 將變量和混雜因素放在線性回歸模型中。這意味著只需擬合Y ~ X + Z的回歸模型,然後計算X的係數及其 p 值。
  2. Y ~ Z得到殘差R,然後擬合R ~ X的回歸模型,然後計算 X 的係數及其 p 值(從 R~X)

我從這裡學習了混雜因素。

編輯 - - -

我很欣賞@Gordon Smyth 的回答。然而,從模擬研究(下面的代碼)中,我比較了 Gordon Smyth 的回答中的方法 1、方法 2 和方法 3 的錯誤發現率,我驚訝地發現方法 2 的誤報率非常低。

我知道方法1是“教科書”正確的。我想知道method2在邏輯上到底有什麼問題?此外,“所有模型都是錯誤的,但有些模型是有用的”。

p1 = p2 = p3 = c()
i=0
while(i<10000){
 y = rnorm(10)
 x = rnorm(10)
 c = rnorm(10)


 # method 1
 p1[i] = summary(lm(y~x + c))$coefficients[2,4]
 # method 2
 p2[i] = summary(lm(lm(y ~ c)$res ~ x))$coefficients[2,4]
 # method 3
 p3[i] = summary(lm(lm(y ~ c)$res~lm(x ~ c)$res))$coefficients[2,4]


 i = i+1
}


# number of false positive.
sum(p1<0.05) # 484
sum(p2<0.05) # 450
sum(p3<0.05) # 623

您需要為混雜因素調整 X 和 Y

第一種方法(使用多元回歸)總是正確的。正如您所說,您的第二種方法並不正確,但只需稍作改動即可使其幾乎正確。要使第二種方法正確,您需要同時回歸和分別在. 我喜歡寫東西對於回歸的殘差在和對於回歸的殘差和. 我們可以解讀作為調整為(和你的一樣) 和作為調整為. 然後你可以回歸在.

通過這種變化,兩種方法將給出相同的回歸係數和相同的殘差。然而,第二種方法仍然會錯誤地計算剩餘自由度為代替(在哪裡是每個變量的數據值的數量)。因此,檢驗統計量為第二種方法會稍微太大,p 值會稍微太小。如果觀察次數很大,那麼這兩種方法將收斂,這種差異無關緊要。

很容易看出為什麼第二種方法的剩餘自由度不太正確。兩種方法都會倒退雙方和. 第一種方法一步完成,而第二種方法分兩步完成。然而,第二種方法“忘記”了由回歸導致因此忽略了減去該變量的自由度。

添加的變量圖

Sanford Weisberg(應用線性回歸,1985 年)用於推薦繪圖對比在散點圖中。這被稱為附加變量圖,它有效地直觀地表示了兩者之間的關係。和調整後.

如果你不調整 X 那麼你低估了回歸係數

正如您最初所說的第二種方法,回歸在,太保守了。它會低估兩者之間關係的重要性和調整為因為它低估了回歸係數的大小。發生這種情況是因為您正在倒退總的來說而不僅僅是獨立於. 在簡單線性回歸中回歸係數的標準公式中,分子(協方差和)將是正確的,但分母(方差) 會太大。正確的協變量總是比.

為了準確起見,您的方法 2 將低估偏回歸係數因數在哪裡是之間的皮爾遜相關係數和.

一個數值例子

下面是一個小數值例子來說明加變量法表示回歸係數在正確,而您的第二種方法(方法2)可能是任意錯誤的。

首先我們模擬,和:

> set.seed(20180525)
> Z <- 10*rnorm(10)
> X <- Z+rnorm(10)
> Y <- X+Z

這裡所以真正的回歸係數和均為 1,截距為 0。

然後我們形成兩個殘差向量(和我的一樣) 和:

> R <- Y.Z <- residuals(lm(Y~Z))
> X.Z <- residuals(lm(X~Z))

兩者的完全多元回歸和作為預測變量,準確地給出了真實的回歸係數:

> coef(lm(Y~X+Z))
(Intercept)           X           Z 
  5.62e-16    1.00e+00    1.00e+00 

添加的變量方法(方法 3)還給出了完全正確:

> coef(lm(R~X.Z))
(Intercept)         X.Z 
 -6.14e-17    1.00e+00 

相比之下,您的方法 2 發現回歸係數僅為 0.01:

> coef(lm(R~X))
(Intercept)           X 
   0.00121     0.01170 

因此,您的方法 2 將真實效果大小低估了 99%。低估因子由之間的相關性給出和:

> 1-cor(X,Z)^2
[1] 0.0117

為了直觀地看到所有這些,添加的變量對比顯示與單位斜率的完美線性關係,代表之間的真實邊際關係和:

添加了變量圖

相比之下,劇情與未調整的完全沒有關係。真正的關係已經完全丟失:

使用未校正 X 的繪圖不正確

引用自:https://stats.stackexchange.com/questions/286850

comments powered by Disqus

相關問答