Étant donné que l'erreur standard d'une régression linéaire est généralement donnée pour la variable de réponse, je me demande comment obtenir des intervalles de confiance dans l'autre sens - par exemple pour une ordonnée à l'origine. Je peux visualiser ce que cela pourrait être, mais je suis sûr qu'il doit y avoir un moyen simple de le faire. Voici un exemple dans R de la façon de visualiser cela:
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 dans la boîte
la source
la source
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))
. Pour les intervalles de prédiction inverse, le fichier d'aide dechemCal:::inverse.predict
donne la référence suivante qui pourrait également aider à dériver un IC: Massart, LM, Vandenginste, BGM, Buydens, LMC, De Jong, S., Lewi, PJ, Smeyers-Verbeke, J. (1997 ) Manuel de chimiométrie et de qualimétrie: partie A, p. 200Réponses:
Comment calculer l'intervalle de confiance de l'ordonnée à l'origine dans une régression linéaire?
Hypothèses
3 procédures pour calculer l'intervalle de confiance sur l'ordonnée à l'origine
Extension Taylor de premier ordre
Votre modèle est avec un écart - type estimé et sur et paramètres et covariance estimée . Vous résolvezY=aX+b σa σb a b σab
Alors l'écart type sur est donné par:σX X
MIB
Voir le code de Marc dans l'encadré à Comment calculer l'intervalle de confiance de l'ordonnée à l'origine dans une régression linéaire? .
CAPITANI-POLLASTRI
CAPITANI-POLLASTRI fournit la fonction de distribution cumulative et la fonction de densité pour le rapport de deux variables aléatoires normales corrélées. Il peut être utilisé pour calculer l'intervalle de confiance de l'ordonnée à l'origine dans une régression linéaire. Cette procédure donne des résultats (presque) identiques à ceux de MIB.
En effet, en utilisant le moindre carré ordinaire et en supposant la normalité des erreurs, (vérifié) et sont corrélés (vérifiés).β^∼N(β,σ2(XTX)−1) β^
La procédure est la suivante:
Comparaison des 3 procédures
Les procédures sont comparées à l'aide de la configuration de données suivante:
10000 échantillons différents sont générés et analysés à l'aide des 3 méthodes. Le code (R) utilisé pour générer et analyser se trouve sur: https://github.com/adrienrenaud/stackExchange/blob/master/crossValidated/q221630/answer.ipynb
Conclusions
La distribution d'ordonnée à l'origine est asymétrique. Elle justifie un intervalle de confiance asymétrique. MIB et CAPITANI-POLLASTRI donnent des résultats équivalents. CAPITANI-POLLASTRI ont une belle justification théorique et cela donne des raisons pour MIB. MIB et CAPITANI-POLLASTRI souffrent d'une sous-couverture modérée et peuvent être utilisés pour définir des intervalles de confiance.
la source
Je recommanderais d'amorcer les résidus:
Ce que vous montrez dans le graphique sont les points où la limite inférieure / supérieure de la bande de confiance des prédictions traversent l'axe. Je ne pense pas que ce soient les limites de confiance de l'interception, mais c'est peut-être une approximation approximative.
la source