7 votos

En la regresión lineal, los datos están muy sesgados, la transformación no funciona

Tengo un conjunto de datos con 9524 observaciones / 97 variables.

La mayoría de las variables son numéricas, y algunas de las variables factoriales (Sí/No o varios niveles)

Quiero realizar una regresión lineal múltiple con este conjunto de datos.

  1. El primer paso fue hacer una transformación logarítmica de los datos, ya que los datos están muy sesgados. (Hice log(x+1) porque muchos tienen 0)

Estos son los histogramas de mis datos después de la transformación logarítmica. enter image description here

"API05B" será la variable dependiente para la regresión lineal.

Hay más variables, y la mayoría de ellas están muy sesgadas. (mayoritariamente a la derecha o algo a la izquierda)

  1. De todos modos, he intentado seguir realizando la regresión para ver los resultados. Con 'regsubsets' - forward selection, intenté seleccionar los mejores predictores (o el mejor modelo) entre esas variables.

enter image description here enter image description here

Elegí el número de predictores al mostrar cambios significativos de BIC o Cp (tamaño del sesgo), que el número de predictores era 3.

A continuación se muestra el histograma de las variables seleccionadas por regsubsets.

enter image description here

Intenté no tener en cuenta la distribución de las variables, ya que no hay supuestos para la distribución de los datos en la regresión lineal.

Pero, me preocupaba que la asimetría tuviera un impacto en la heteroscedasticidad.

  1. Diagnóstico para el modelo lineal - valores atípicos / multicolinealidad / heterocedasticidad

Eliminé los valores atípicos / corregí la multicolinealidad con VIF.

No hubo ningún problema con estos, pero..

Hice lmtest::bptest / lmtest::coeftest, el resultado diciendo que la heteroskedasticidad existe.

enter image description here enter image description here

La transformación de Box-cox no funcionó tan bien.

Aquí está el gráfico resumen de mi modelo final.

enter image description here

He leído varios artículos sobre cómo tratar los datos sesgados o la heteroscedasticidad,

la mayoría de ellos diciendo que la transformación logarítmica o la transformación box-cox sería útil, pero no funcionó..

Algunos de ellos recomiendan no ceñirse a la regresión lineal, como probar la regresión lineal robusta / el modelo de inflación cero / los modelos de dos partes, etc.

Cuestiones que quiero resolver..

  1. tratar la asimetría de los datos o la heteroscedasticidad

    • ¿se necesita otra transformación?
  2. selección de predictores

    • ¿Regsubsets o Lasso?
    • ¿transformación en primer lugar? o ¿selección de predictores en primer lugar?
  3. ¿se necesitan otros enfoques?

    • Si nada de lo anterior es útil para este problema, ¿se necesitan otros enfoques como los mencionados anteriormente?
  4. ¿Hay algo malo en mi proceso?

¡¡Cualquier consejo o sugerencia será apreciado!! Gracias.

2 votos

Hay que tener en cuenta que la prueba de heterocedasticidad debe tomarse con cautela, especialmente en el caso de las muestras grandes, ya que en estos casos la prueba rechazará fácilmente el valor nulo. Las distribuciones de sus variables no importan, los gráficos de residuos parecen estar bien en su mayoría, excepto por la varianza decreciente hacia el extremo derecho. ¿Ha intentado construir un modelo sin transformaciones?

0 votos

Sí, he construido el modelo sin transformación. Creo que todo funcionó bien, pero sólo el problema de la heteroskedasticidad.

0 votos

Dependiendo del modelo lineal que hayas utilizado, podrías: 1) utilizar residualPlots() de la car para ver qué variables están causando problemas, 2) utilizar weights argumento de la nlme para modelar la varianza.

3voto

David Puntos 41

Se hacen demasiadas preguntas. Le invitamos a desglosarlas. Y muchas de las preguntas ya están bien contestadas en este foro.

Sólo abordaré aquí su primera pregunta.

Hay más variables, y la mayoría de ellas están muy sesgadas. (mayoritariamente a la derecha o algo a la izquierda)

Parece que tienes algunos malentendidos sobre los supuestos de la regresión lineal. La regresión lineal no supone que la variable independiente/la entrada del modelo tenga una distribución gaussiana, sino que supone el residuo.

Los detalles se pueden encontrar

¿Por qué la normalidad de los residuos es "apenas importante" para estimar la recta de regresión?

¿Por qué la regresión lineal tiene una suposición sobre el residuo pero el modelo lineal generalizado tiene una suposición sobre la respuesta?

En el primer enlace que proporcioné, también se explica que la normalidad de los residuos no es tan importante como se piensa.

Para la selección de características, véase aquí

0 votos

Si otras dos respuestas dicen básicamente lo mismo que tu respuesta, ¿no sería mejor votar para cerrar como duplicado? Alternativamente, si no lo hiciste porque el OP hace demasiadas preguntas, ¿no deberías votar para cerrar como demasiado amplio?

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