Этот вопрос конкретно не относится к R
, но я решил использовать его R
для иллюстрации.
Рассмотрим код для получения доверительных полос вокруг (нормальной) qq-строки:
library(car)
library(MASS)
b0<-lm(deaths~.,data=road)
qqPlot(b0$resid,pch=16,line="robust")
Я ищу объяснение (или альтернативную ссылку на бумажный / онлайн-документ, объясняющий), как устроены эти доверительные интервалы (я видел ссылку на Fox 2002 в справочных файлах R, но, к сожалению, у меня этого нет книга удобная).
Мой вопрос будет уточнен на примере. Вот как R
вычисляются эти конкретные CI (я сократил / упростил код, используемый в car::qqPlot
)
x<-b0$resid
good<-!is.na(x)
ord<-order(x[good])
ord.x<-x[good][ord]
n<-length(ord.x)
P<-ppoints(n)
z<-qnorm(P)
plot(z,ord.x,type="n")
coef<-coef(rlm(ord.x~z))
a<-coef[1]
b<-coef[2]
abline(a,b,col="red",lwd=2)
conf<-0.95
zz<-qnorm(1-(1-conf)/2)
SE<-(b/dnorm(z))*sqrt(P*(1-P)/n) #[WHY?]
fit.value<-a+b*z
upper<-fit.value+zz*SE
lower<-fit.value-zz*SE
lines(z,upper,lty=2,lwd=2,col="red")
lines(z,lower,lty=2,lwd=2,col="red")
Вопрос в том, каково обоснование формулы, используемой для вычисления этих SE (например, линия SE<-(b/dnorm(z))*sqrt(P*(1-P)/n)
).
ПОЭТОМУ эта формула сильно отличается от формулы обычных доверительных интервалов, используемых в линейной регрессии
Ответы:
Как упоминает COOLSerdash в комментариях, Джон Фокс [1] пишет на страницах 35-36:
[1] Fox, J. (2008),
Прикладной регрессионный анализ и обобщенные линейные модели, 2nd Ed. ,
Sage Publications, Inc
источник