1 votos

¿Calcular la incertidumbre de la pendiente cuando la variable dependiente en una regresión lineal tiene un error sustancial?

Tengo un conjunto de datos en el que la variable dependiente (y) tiene un error conocido y sustancial y, sin embargo, las observaciones se alinean bastante bien a lo largo de una línea cuando se trazan contra la variable independiente (x). El ajuste de una regresión lineal parece sobrestimar sustancialmente la precisión de la estimación de la pendiente de y frente a x.

¿Cómo se puede propagar adecuadamente el error conocido en y a la estimación de la pendiente?

Creo que aquí hay parte de una respuesta, pero supone que el punto se ajusta exactamente a una regresión lineal: Calcular la incertidumbre de la pendiente de la regresión lineal basándose en la incertidumbre de los datos

Como ejemplo reproducible en R:

# the data
set.seed(5)
dat <- data.frame(x = 0:8, y = seq(0,16, length.out=9)+rnorm(9, 0, 0.5), y.se = 3)

# fit a naive model, not considering error in y
mod <- lm(y ~ x, dat)
summary(mod)
preds <- predict(mod, se.fit = TRUE)

plot(dat$x, dat$y, ylim=c(-7,22))
arrows(dat$x, dat$y-1.96*dat$y.se, dat$x, dat$y+1.96*dat$y.se, length=0)

# plot the confidence interval on the linear regression
polygon(c(dat$x, rev(dat$x)), c(preds$fit+preds$se.fit, rev(preds$fit-preds$se.fit)), col = 'grey')

enter image description here

La pendiente se estima con mucha precisión cerca de 2,0:

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  0.04670    0.32783   0.142    0.891    
x            1.97546    0.06886  28.689 1.61e-08 ***

Sin embargo, visualmente, una pendiente tan baja como 0,7 o tan alta como 3,3 se ajustaría bastante bien a los límites de error de y.

0voto

Shane Oliver Puntos 126

Esto puede tratarse con un modelo de ecuaciones estructurales (SEM)

library(lavaan)

code = '
yhat ~ x     # Latent variable predicted by x
yhat =~ 1*y  # y is the single indicator of yhat
y ~~ 9*y     # y has error variance of 9 (3^2)
'

fit = lavaan(code, dat)
summary(fit)

lavaan 0.6-7 ended normally after 3 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of free parameters                          1

  Number of observations                             9

Model Test User Model:

  Test statistic                                24.572
  Degrees of freedom                                 1
  P-value (Chi-square)                           0.000

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Expected
  Information saturated (h1) model          Structured

Latent Variables:
                   Estimate  Std.Err  z-value  P(>|z|)
  yhat =~                                             
    y                 1.000                           

Regressions:
                   Estimate  Std.Err  z-value  P(>|z|)
  yhat ~                                              
    x                 1.975    0.387    5.101    0.000

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)
   .y                 9.000                           
   .yhat              0.000   

Las parcelas también pueden ser útiles...

library(semPlot)
semPaths(fit, what = 'path', whatLabels = 'est', layout = 'circle2')

enter image description here

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X