Da der Standardfehler einer linearen Regression normalerweise für die Antwortvariable angegeben wird, frage ich mich, wie Konfidenzintervalle in die andere Richtung erhalten werden können - z. B. für einen x-Achsenabschnitt. Ich kann mir vorstellen, was es sein könnte, aber ich bin sicher, dass es einen einfachen Weg geben muss, dies zu tun. Unten sehen Sie ein Beispiel in R, wie dies visualisiert werden kann:
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)
r
regression
confidence-interval
bootstrap
Marc in der Box
quelle
quelle
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))
. Für inverse Vorhersageintervalle enthält die Hilfedatei vonchemCal:::inverse.predict
die folgende Referenz, die auch zur Ableitung eines CI beitragen könnte: Massart, LM, Vandenginste, BGM, Buydens, LMC, De Jong, S., Lewi, PJ, Smeyers-Verbeke, J. (1997) ) Handbuch für Chemometrie und Qualimetrie: Teil A, S. 200Antworten:
Wie berechnet man das Konfidenzintervall des x-Achsenabschnitts in einer linearen Regression?
Annahmen
3 Verfahren zur Berechnung des Konfidenzintervalls für den x-Achsenabschnitt
Taylor-Erweiterung erster Ordnung
MIB
Siehe Code von Marc im Feld unter Wie berechnet man das Konfidenzintervall des x-Achsenabschnitts in einer linearen Regression? .
CAPITANI-POLLASTRI
CAPITANI-POLLASTRI bietet die kumulative Verteilungsfunktion und die Dichtefunktion für das Verhältnis zweier korrelierter normaler Zufallsvariablen. Es kann verwendet werden, um das Konfidenzintervall des x-Achsenabschnitts in einer linearen Regression zu berechnen. Dieses Verfahren liefert (fast) identische Ergebnisse wie die von MIB.
Das Verfahren ist wie folgt:
Vergleich der 3 Verfahren
Die Prozeduren werden mit der folgenden Datenkonfiguration verglichen:
Mit den 3 Methoden werden 10000 verschiedene Proben erzeugt und analysiert. Der zum Generieren und Analysieren verwendete Code (R) befindet sich unter: https://github.com/adrienrenaud/stackExchange/blob/master/crossValidated/q221630/answer.ipynb
Schlussfolgerungen
Die x-Achsenabschnitt-Verteilung ist asymmetrisch. Es rechtfertigt ein asymmetrisches Konfidenzintervall. MIB und CAPITANI-POLLASTRI liefern gleichwertige Ergebnisse. CAPITANI-POLLASTRI haben eine schöne theoretische Begründung und geben Anlass zur MIB. MIB und CAPITANI-POLLASTRI leiden unter einer mäßigen Unterdeckung und können zum Festlegen von Konfidenzintervallen verwendet werden.
quelle
Ich würde empfehlen, die Residuen zu booten:
Was Sie in der Grafik anzeigen, sind die Punkte, an denen die untere / obere Grenze des Konfidenzbandes der Vorhersagen die Achse kreuzt. Ich denke nicht, dass dies die Vertrauensgrenzen des Abschnitts sind, aber vielleicht sind sie eine grobe Annäherung.
quelle