Поскольку стандартная ошибка линейной регрессии обычно задается для переменной отклика, мне интересно, как получить доверительные интервалы в другом направлении - например, для x-перехвата. Я могу представить, что это может быть, но я уверен, что должен быть прямой способ сделать это. Ниже приведен пример того, как R визуализировать это:
set.seed(1)
x <- 1:10
a <- 20
b <- -2
y <- a + b*x + rnorm(length(x), mean=0, sd=1)
fit <- lm(y ~ x)
XINT <- -coef(fit)[1]/coef(fit)[2]
plot(y ~ x, xlim=c(0, XINT*1.1), ylim=c(-2,max(y)))
abline(h=0, lty=2, col=8); abline(fit, col=2)
points(XINT, 0, col=4, pch=4)
newdat <- data.frame(x=seq(-2,12,len=1000))
# CI
pred <- predict(fit, newdata=newdat, se.fit = TRUE)
newdat$yplus <-pred$fit + 1.96*pred$se.fit
newdat$yminus <-pred$fit - 1.96*pred$se.fit
lines(yplus ~ x, newdat, col=2, lty=2)
lines(yminus ~ x, newdat, col=2, lty=2)
# approximate CI of XINT
lwr <- newdat$x[which.min((newdat$yminus-0)^2)]
upr <- newdat$x[which.min((newdat$yplus-0)^2)]
abline(v=c(lwr, upr), lty=3, col=4)
library(boot); sims <- boot(data.frame(x, y), function(d, i) { fit <- lm(y ~ x, data = d[i,]) -coef(fit)[1]/coef(fit)[2] }, R = 1e4); points(quantile(sims$t, c(0.025, 0.975)), c(0, 0))
. Для интервалов обратного прогнозирования в файле справкиchemCal:::inverse.predict
приводится следующая справка, которая также может помочь при получении КИ: Massart, LM, Vandenginste, BGM, Buydens, LMC, Де Йонг, С., Леви, PJ, Смайерс-Вербеке, J. (1997 ) Справочник по хемометрике и квалиметрии: часть А, с. 200