답변:
회귀 변수의 잔차가 반응 변수가 아닌 경우에도 정규 분포를 따르는 것이 합리적입니다. 일 변량 회귀 문제를 고려하십시오 . 회귀 모델이 적합하고 β = 1 의 실제 값으로 가정합니다 . 이 경우, 실제 회귀 모형의 잔차는 정상이지만 y 의 조건 평균 이 x 의 함수이므로 y 의 분포는 x 의 분포에 의존합니다 . 데이터 세트에 x 값이 많은 경우0에 가까워지고 값이 높아질수록 y 의 분포가 왼쪽으로 치우칩니다. x의 값이 대칭 적으로 분포되면 y 는 대칭 적으로 분포됩니다. 회귀 문제의 경우, 우리는 x 값에 대해 반응이 정상이라고 가정합니다 .
@DikranMarsupial은 물론 옳습니다. 그러나 그의 관심사 를 설명 하는 것이 좋을 수 있습니다 . 특히이 문제가 자주 발생하는 것 같습니다. 구체적으로, 회귀 모형 의 잔차 는 p- 값이 정확하도록 정규 분포되어야합니다. 그러나 잔차가 정규적으로 분포되어 있어도 가 중요하다는 것을 보장하지는 않습니다 . 그것은 X 의 분포에 달려 있습니다 .
간단한 예를 들어 보겠습니다 (내가 구성하고 있음). 우리가 고립 수축기 고혈압 (즉, 최고 혈압 수치가 너무 높음)에 대한 약물을 테스트한다고 가정 해 봅시다 . 수축기 bp는 일반적으로 환자 인구 내에서 평균 160 및 SD 3으로 분배되며 환자가 매일 복용하는 약물의 각 mg에 대해 수축기 bp가 1mmHg 감소한다고 규정합시다. 즉, 진정한 값 160이고, β (1)은 : 27이며, 실제 데이터 생성 함수이고 B의 P의 S 개의 Y S = 160 - 1 × 일일 약물 투여 + ε 가상의 연구에서 300 명의 환자가이 새로운 약의 0mg (위약), 20mg 또는 40mg을 매일 복용하도록 배정되었습니다. ( X 가 정상적으로 분포되어 있지 않다는점에 유의하십시오.) 그런 다음 약물이 효력을 발휘하기에 충분한 시간이 지나면 다음과 같이 데이터가 나타납니다.
(저는 점들이 너무 겹치지 않아서 구별하기 어려워졌습니다.) 이제 의 분포 (즉, 한계 / 원래 분포)와 잔차를 확인하십시오.
set.seed(123456789) # this make the simulation repeatable
b0 = 160; b1 = -1; b1_null = 0 # these are the true beta values
x = rep(c(0, 20, 40), each=100) # the (non-normal) drug dosages patients get
estimated.b1s = vector(length=10000) # these will store the simulation's results
estimated.b1ns = vector(length=10000)
null.p.values = vector(length=10000)
for(i in 1:10000){
residuals = rnorm(300, mean=0, sd=3)
y.works = b0 + b1*x + residuals
y.null = b0 + b1_null*x + residuals # everything is identical except b1
model.works = lm(y.works~x)
model.null = lm(y.null~x)
estimated.b1s[i] = coef(model.works)[2]
estimated.b1ns[i] = coef(model.null)[2]
null.p.values[i] = summary(model.null)$coefficients[2,4]
}
mean(estimated.b1s) # the sampling distributions are centered on the true values
[1] -1.000084
mean(estimated.b1ns)
[1] -8.43504e-05
mean(null.p.values<.05) # when the null is true, p<.05 5% of the time
[1] 0.0532
이 결과는 모든 것이 잘 작동 함을 보여줍니다.