¿Cómo manejar con valores perdidos para preparar datos para la selección de características con LASSO?


10

Mi situación:

  • pequeño tamaño de muestra: 116
  • variable de resultado binaria
  • larga lista de variables explicativas: 44
  • las variables explicativas no vinieron de la parte superior de mi cabeza; su elección se basó en la literatura.
  • La mayoría de los casos en la muestra y la mayoría de las variables tienen valores faltantes.

Enfoque para la selección de características elegidas: LASSO

El paquete glmnet de R no me permite ejecutar la rutina glmnet, aparentemente debido a la existencia de valores faltantes en mi conjunto de datos. Parece que hay varios métodos para manejar los datos faltantes, por lo que me gustaría saber:

  • ¿LASSO impone alguna restricción en términos del método de imputación que puedo usar?
  • ¿Cuál sería la mejor apuesta para el método de imputación? Idealmente, necesito un método que pueda ejecutar en SPSS (preferiblemente) o R.

ACTUALIZACIÓN1: De algunas de las respuestas a continuación se hizo evidente que he tratado con problemas más básicos antes de considerar los métodos de imputación. Me gustaría agregar aquí nuevas preguntas al respecto. En la respuesta que sugiere la codificación como valor constante y la creación de una nueva variable para tratar los valores 'no aplicables' y el uso del lazo grupal:

  • ¿Diría que si uso LASSO grupal, podría usar el enfoque sugerido para predictores continuos y también para predictores categóricos? Si es así, supongo que sería equivalente a crear una nueva categoría; desconfío de que esto pueda introducir un sesgo.
  • ¿Alguien sabe si el paquete glmnet de R admite el grupo LASSO? Si no, ¿alguien sugeriría otro que lo haga en combinación con la regresión logística? Se pueden encontrar varias opciones que mencionan el grupo LASSO en el repositorio de CRAN, ¿alguna sugerencia de la más adecuada para mi caso? Tal vez SGL?

Este es un seguimiento de una pregunta mía anterior ( ¿Cómo seleccionar un subconjunto de variables de mi larga lista original para realizar un análisis de regresión logística? ).

OBS: No soy un estadístico.


(1) El mejor enfoque para la imputación depende de la proporción y el patrón de los valores perdidos, las relaciones entre las variables y los supuestos que está preparado para hacer sobre las razones de los valores perdidos. (2) Se puede usar cualquier método de imputación para proporcionar información a LASSO; La dificultad es evaluar cómo la imputación afecta los resultados. No sé cómo combinar la imputación múltiple con LASSO (sin duda alguien lo hace), pero una comparación informal de resultados de diferentes ejecuciones de imputación (¿se seleccionan generalmente los mismos predictores?) Podría ser informativa.
Scortchi - Restablece a Monica

@Scortchi: La mayoría de mis valores perdidos pertenecen a la categoría 'no aplicable'. Por ejemplo: en la variable 'edad de la mujer adulta en el hogar', casos en los que el hombre adulto es viudo. En realidad, creo que tengo que dar un paso atrás aquí: ¿debo tratar los valores de 0 en variables continuas como valores faltantes? Por ejemplo: 0 años de educación, 0 miembros del hogar entre 14 y 60 años.
Desconcertado el

Es difícil imaginar una situación en la que desee tratar eso como un hecho desconocido sobre una mujer ausente en lugar de un hecho conocido sobre el hogar. La pregunta sobre los ceros es difícil de entender: ¿se pregunta si, por ejemplo, ningún año de educación es un valor inverosímil o 0 podría usarse para codificar un valor faltante? (Y entonces, ¿cómo podría saberlo?) Ciertamente no hay una razón general para tratar el 0 como indicativo de falta.
Scortchi - Restablece a Monica

@Scortchi: Sobre la variable de edad femenina, entiendo lo que quieres decir. Pero el problema es: ¿cómo codificaría el caso femenino ausente si no fuera NA? Sobre ceros: sí, esa era exactamente mi pregunta, perdón si no estaba claro. Pensé que el programa podría tener algún problema en el manejo de valores cero y que podría no "entender" lo que quería decir con él.
Desconcertado

Puede codificarlo como cualquier valor constante e introducir una variable indicadora de presencia / ausencia (y usar el grupo LASSO). No hay razón por la cual LASSO o cualquier otro programa de regresión deba manejar incorrectamente los valores cero para los predictores. [Por favor, no tome esto de la manera incorrecta, pero estas son preguntas muy básicas, sugiriendo que si esto es por diversión, es posible que desee comenzar con problemas más simples, o que si es real, es posible que desee consultar a un estadístico.]
Scortchi - Restablece a Monica

Respuestas:


10

x

x1={cwhen x is not applicablexotherwise

c

x2={1when x is not applicable0otherwise

Supongamos que el predictor lineal para la respuesta viene dado por

η=β0+β1x1+β2x2+

que resuelve a

η=β0+β1x1+

x

η=β0+β1c+β2+

cβ0β1β2xx=c

x

El uso de LASSO presenta dos problemas:

  1. c
  2. x1x2

x1x2L1L2[x1 x2]


¿Alguien sabe si el paquete glmnet de R admite el grupo LASSO? Si no, ¿alguien sugeriría otro que lo haga en combinación con la regresión logística? Se pueden encontrar varias opciones que mencionan el grupo LASSO en el repositorio de CRAN, ¿alguna sugerencia de la más adecuada para mi caso? Tal vez SGL?
Desconcertado el

Entonces, ¿diría que si uso LASSO grupal, podría usar el enfoque que sugiere para predictores continuos y también para predictores categóricos?
Desconcertado

5

La imputación múltiple nunca es un mal enfoque. También puede hacer la información completa máxima verosimilitud. Buena revisión y comparación aquí y aquí .

Pero si va por ese camino, considere usar Stan para ajustar la imputación de ML simultáneamente con su regresión como un solo modelo bayesiano, ya que LASSO es un caso especial de regresión bayesiana de todos modos .


Había entendido mal el método de imputación múltiple, ahora veo que sería aplicable para mi caso. Edité mi pregunta para reflejar esto. ¿Sabes si SPSS o R ejecutan dos opciones que mencionaste?
Desconcertado

1
Hay un paquete R mique podría ayudarte.
shadowtalker

2
Puede ejecutar Stan a través de R (ver RStan ).
Scortchi - Restablece a Monica

Los paquetes adicionales de imputación múltiple para R incluyen Ameliay mice.
Sycorax dice Reinstate Monica

0

El comando CATREG en Estadísticas maneja los datos que faltan con LASSO. Puede excluir casos por lista o imputar el procedimiento Aunque su nombre sugiere que es para variables categóricas, puede establecer la escala en Numérico para manejar el caso continuo.


esto es SAS PROC CATREG, supongo.
Ben Bolker

@JKP: En realidad, me encontré con este comando. Sin embargo, considerando que mi variable outome es binaria, supongo que la regresión logística sería más apropiada que la regresión categórica (CATREG): ¿estoy en lo cierto? Además, las opciones en CATREG parecen bastante limitadas: solo puede elegir entre excluir casos, reemplazar los valores faltantes con valores medios o crear una categoría adicional.
Desconcertado

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.