¿Cómo comparo las pendientes de regresión bootstrapped?

13

Supongamos que tengo dos conjuntos de datos con n observaciones de pares de datos de variable independiente xy variable dependiente y cada uno. Supongamos, además, que deseo generar una distribución de pendientes de regresión para cada conjunto de datos mediante el arranque de las observaciones (con reemplazo) N veces y calculando la regresión cada vez. ¿Cómo comparo las dos distribuciones para decir que las pendientes son significativamente diferentes? Una prueba U para probar la diferencia entre las medianas de las distribuciones dependería en gran medida de N, es decir, cuanto más repita el arranque, más significativa será la diferencia. ¿Cómo debo calcular la superposición entre las distribuciones para determinar una diferencia significativa? y = a + bx

usuario7417
fuente

Respuestas:

19

El bootstrapping se realiza para obtener una imagen más sólida de la distribución de muestreo que la que supone la teoría de la muestra grande. Cuando arrancas, efectivamente no hay límite para la cantidad de 'muestras de arranque' que tomas; de hecho, obtiene una mejor aproximación a la distribución de muestreo mientras más muestras de arranque tome. Es común usar B=10,000 muestras de arranque, aunque no hay nada mágico en ese número. Además, no ejecuta una prueba en las muestras de arranque; tiene una estimación de la distribución de muestreo: úsela directamente. Aquí hay un algoritmo:

  1. tome una muestra de arranque de un conjunto de datos muestreando observaciones de arranque con reemplazo. [Con respecto a los comentarios a continuación, una pregunta relevante es qué constituye una 'observación de arranque' válida para usar en su muestra de arranque. De hecho, hay varios enfoques legítimos; Mencionaré dos que son robustos y le permiten reflejar la estructura de sus datos: cuando tiene datos de observación (es decir, los datos se muestrearon en todas las dimensiones, una observación de arranque puede ser una n-tupla ordenada (por ejemplo, una fila de su conjunto de datos). Por ejemplo, si tiene una variable predictiva y una variable de respuesta, tomaría una muestra de n 1 ( x , y )n1n1 (x,y)pares ordenados Por otro lado, cuando se trabaja con datos experimentales, los valores de las variables predictoras no se muestrearon, pero las unidades experimentales se asignaron a los niveles previstos de cada variable predictiva. En un caso como este, puede muestrear y valores dentro de cada uno de los j niveles de su variable predictiva, luego emparejar esos y s con el valor correspondiente de ese nivel predictor. De esta manera, no tomarías muestras sobre X ]n1j yjyX
  2. ajuste a su modelo de regresión y almacenar la estimación de la pendiente (lo llaman ß 1 )β^1
  3. tome una muestra de arranque del otro conjunto de datos muestreando observaciones de arranque con reemplazon2
  4. β^2
  5. β^1β^2
  6. almacenar la estadística y volcar la otra información para no desperdiciar memoria
  7. B=10,000
  8. ordenar la distribución de muestreo bootstrapped de las diferencias de pendiente
  9. calcule el% del bsd que se superpone a 0 (el que sea más pequeño, el% de la cola derecha o el% de la cola izquierda)
  10. multiplica este porcentaje por 2

La lógica de este algoritmo como prueba estadística es fundamentalmente similar a las pruebas clásicas (p. Ej., Pruebas t), pero no está asumiendo que los datos o las distribuciones de muestreo resultantes tengan una distribución particular. (Por ejemplo, no está asumiendo la normalidad). La suposición principal que está haciendo es que sus datos son representativos de la población de la que tomó muestras / desea generalizar. Es decir, la distribución de la muestra es similar a la distribución de la población. Tenga en cuenta que, si sus datos no están relacionados con la población que le interesa, no tiene suerte.

Algunas personas se preocupan por usar, por ejemplo, un modelo de regresión para determinar la pendiente si no está dispuesto a asumir la normalidad. Sin embargo, esta preocupación es errónea. El teorema de Gauss-Markov nos dice que la estimación es imparcial (es decir, centrada en el valor verdadero), por lo que está bien. La falta de normalidad simplemente significa que la distribución de muestreo real puede ser diferente de la teóricamente planteada, por lo que los valores p no son válidos. El procedimiento de arranque le brinda una forma de lidiar con este problema.

Otros dos problemas con respecto al arranque: si se cumplen los supuestos clásicos, el arranque es menos eficiente (es decir, tiene menos potencia) que una prueba paramétrica. En segundo lugar, el bootstrapping funciona mejor cuando se explora cerca del centro de una distribución: los medios y las medianas son buenos, los cuartiles no tan buenos, los bootstrapping min o max necesariamente fallan. Con respecto al primer punto, es posible que no necesite arrancar en su situación; Con respecto al segundo punto, el arranque de la pendiente está perfectamente bien.

gung - Restablece a Monica
fuente
Aunque puedo estar equivocado, pensé que el sistema de arranque en la regresión tenía que estar en los residuos y no en los datos en bruto, para ser validado ...
Xi'an
@ Xi'an, me he equivocado antes, pero no entiendo por qué piensas que solo los residuos de arranque son válidos. La sección 9.5 de Efron y Tibshirani (1994) dice que "los pares de bootstrapping son menos sensibles a los supuestos que los residuos de bootstrapping. El error estándar obtenido por los pares de bootstrapping da respuestas razonables incluso si [la estructura de probabilidad del modelo lineal] es completamente incorrecta". La implicación es que la aplicación del bootstrap es más robusta, aunque implican que puede ser menos eficiente en algunos casos.
gung - Restablece a Monica
Mi preocupación con el arranque de los pares es que también incorporas la distribución de los predictores, que generalmente se deja fuera de la imagen en los modelos lineales regulares. Es por eso que siempre les enseño a mis alumnos a cargar solo los residuos.
Xi'an
@ Xi'an, ese es un punto razonable, supongo que estaba asumiendo una estructura de datos de observación. He editado mi respuesta para agregar más detalles sobre estas preocupaciones. Sin embargo, no veo cómo eso implica que los pares de bootstrapping son necesariamente inválidos.
gung - Restablece a Monica
Forzar un emparejamiento entre dos conjuntos de datos independientes es artificial e ineficiente. ¡Puedes hacerlo mucho mejor que eso!
whuber
4

si

yi=β0+β1xi+β2si+β3sixi+ϵi
β3
E[yix,si=1]=(β0+β2)+(β1+β3)xiE[yix,si=0]=β0+β1xi.
You can bootstrap the distribution of β3 if you want or just use standard testing procedures (normal/t). If using analytical solutions, you need to either assume homoskedasticity across groups or correct for heteroskedasticity. For bootstrapping to be robust to this, you need to choose n observations randomly among the first group and n among the second, rather than 2n from the whole population.

If you have correlation among the error terms, you may need to alter this procedure a bit, so write back if that is the case.

You can generalize this approach to the seemingly unrelated regressions (SUR) framework. This approach still allows the coefficients for the intercept and the slope to be arbitrarily different in the two data sets.

Charlie
fuente
1
Es una buena idea. Pero, ¿no supone esto que las dos regresiones tienen errores de id?
whuber
1
Buen punto. Requiere que no haya diferentes variaciones para los errores por grupo y que los errores no estén correlacionados en los diferentes grupos.
Charlie
0

Hacer todo en una regresión es ordenado, y el supuesto de independencia es importante. Pero calcular las estimaciones puntuales de esta manera no requiere una variación constante. Prueba este código R;

x <- rbinom(100, 1, 0.5)
z <- rnorm(100)
y <- rnorm(100)
coef(lm(y~x*z))
coef(lm(y~z, subset= x==1))[1] - coef(lm(y~z, subset= x==0))[1]
coef(lm(y~z, subset= x==1))[2] - coef(lm(y~z, subset= x==0))[2]

Obtenemos la misma estimación puntual en ambos sentidos. Las estimaciones de error estándar pueden requerir una variación constante (dependiendo de cuál use), pero el arranque considerado aquí no usa errores estándar estimados.

invitado
fuente
1
Si va a probar si la diferencia de pendientes es cero (como en la respuesta de @ Charlie, a la que parece estar haciendo un seguimiento), necesita una estimación precisa y válida de los errores estándar. No importa si arranca esa estimación o no.
whuber