¿Cómo podemos tratar las variables categóricas con muchos niveles (> 100) de manera eficiente en una regresión? ¿Qué métodos hay para reducir la cantidad de niveles?

Hay dos partes para estas preguntas:

1. Cómo lidiar con una variable categórica ‘a’ con muchos niveles:

a. Suponiendo que tiene n niveles, cree n-1 variables binarias. Por ejemplo, si tiene ingresos variables con 5 niveles: muy bajo, bajo, medio, alto y muy alto.

si. Cree variables Muy bajo, Bajo, Medio y Alto [5–1 = 4] en su conjunto de datos con los posibles valores 0 y 1.

do. Para la primera variable – Muy baja: Asigne un valor de 1 para registros que tengan ‘Muy bajo’ como Ingreso, 0 de lo contrario.

re. Itere esto para las 3 variables restantes.

mi. Ahora, puede usarlos en su ecuación del modelo de regresión.

Tenga en cuenta la regla (n-1) : si una variable tiene 0 en los cuatro casos anteriores, el modelo (y usted) sabe que pertenece a la quinta categoría, es decir, Muy alta = 1 – Muy baja – Baja – Media – Alta. Una suposición de regresión es que no puede expresar una variable como una combinación lineal de otras variables.

2. Reduzca el número de niveles:

a. El mejor enfoque es permitir que el modelo seleccione las variables a través de un enfoque de selección por pasos [se debe hacer una prueba de colinealidad múltiple]

si. Si desea trabajar con variables menores que entran en la ecuación del modelo, puede realizar un análisis de conglomerados para identificar los niveles que se comportan de manera similar contra el dependiente.

do. También puede usar el análisis factorial para la reducción de dimensiones

re. Puede utilizar conocimientos prácticos, por ejemplo, si está trabajando con departamentos, puede agrupar departamentos que vean juntos de manera similar

Mis 2 centavos es que no debes reducir las dimensiones y debes permitir que la metodología de regresión sugiera la mejor ecuación del modelo.

Hay muchos métodos para lidiar con esto.

Una sería agruparlos según la respuesta; puedes ordenarlos por respuesta, luego dividirlos como quieras; quizás deje que lo maneje un árbol de decisión bastante superficial. Ahora tienes muchas menos categorías.

Otra es apuntar codificarlos. Reemplace cada categoría en una variable con la respuesta media dada esa categoría. Ahora tiene 1 función continua en lugar de un montón de categorías.

Otra es agruparlos por frecuencia. Las categorías más frecuentes pueden dominar, y las menos frecuentes pueden ser numerosas, pero cada una tiene pocas muestras. Puede, por ejemplo, dejar solo las 5 categorías principales y agrupar el resto en una nueva categoría. Ahora tienes 6 variables categóricas.

Hay muchas otras cosas que puedes hacer. Solo sé creativo y deja que tus datos te guíen

Si bien no he visto exactamente sus datos, sugeriría probar esto:

Cuente la frecuencia contra cada una de sus categorías. Orden descendiente. Lleve un registro del recuento acumulativo y conserve categorías que suban al percentil 95 en el acumulado. Las categorías restantes que representan menos del 5%, las vuelven todas a “otras”.

Ahora haga una codificación de destino. Eso podría hacerse de muchas maneras. Para la regresión, puede hacer una media de objetivo después de hacer un grupo en los datos de entrenamiento con su columna categórica. Para la clasificación, puede encontrar la probabilidad condicional de que el objetivo sea 1 dado que la columna categórica toma un valor particular. Reemplace la columna categórica con esta representación numérica.

Recuerde hacer esta codificación utilizando SOLO los datos de entrenamiento. Para los datos de validación / prueba / puntuación, utilice una búsqueda entre la etiqueta categórica y el valor calculado.

Realmente no hay una buena manera de hacer esto realmente en una regresión, ya que “Departamentos” es una variable nominal, y la codificación de variables ficticias no parece práctica si solo está tratando de predecir ventas. Lo que podría hacer es calcular los pares de coeficientes de correlación para todas las ventas mensuales por departamento, y luego mirar los pares correlacionados más altos. Esos serían candidatos para combinar si tienen sentido comercial. Dicho esto, puede obtener bajas correlaciones para departamentos similares basados ​​únicamente en un tamaño de muestra bajo, por lo que hay mucho arte involucrado. Pero hagas lo que hagas, esto podría ser un control de cordura.

En los comentarios, implica que está tratando con ventas en cada uno de un gran número de departamentos e intentando predecir ventas en cada uno.

Si este es el caso, puede ejecutar una regresión separada para cada departamento; Al poner todos los departamentos en una regresión, se requiere que los otros parámetros sean los mismos para todos los departamentos (a menos que se incluyan interacciones que, con tantos niveles, se volverían aún más desordenados).

Si se trata de demasiados departamentos (su título dice más de 100, su comentario dice 80), entonces puede combinar departamentos, pero cómo hacer esto es principalmente una pregunta sustantiva: ¿qué departamentos están relacionados entre sí? ¿Cuáles están en la misma división (o lo que sea)? Etc.

More Interesting

¿Eres un científico de datos pero tu especialidad no era CS? En caso afirmativo, ¿cómo hizo la transición? ¿Y cuánto te llevó?

¿Cuán vital será la ciencia de datos en los próximos diez años?

¿Los científicos de datos suelen utilizar el análisis discriminante lineal? ¿Por qué o por qué no?

¿Cuál es la diferencia entre un científico de datos y un analista de inteligencia de negocios?

¿Qué es exactamente la minería de datos y cómo la aprendo?

¿Cuál es la diferencia entre datos e información?

¿Qué hace que un problema de ciencia de datos sea interesante para usted?

¿Qué es mejor para un doctorado de aprendizaje automático, UMass Amherst o la Universidad de Edimburgo?

¿Cómo se procesan y visualizan los grandes datos? ¿Qué herramientas se usan?

¿Cómo se implementan los algoritmos de aprendizaje automático en un entorno empresarial?

¿El análisis exploratorio de datos no es necesario para el aprendizaje profundo?

¿Cuánto tiempo puede sobrevivir Informatica en el mundo de los grandes datos?

Estoy trabajando actualmente. Quiero convertirme en un científico de datos. ¿Cuáles fueron los conceptos y tecnologías centrales que necesito aprender?

¿Cuál es una buena herramienta GUI para PostgreSQL que tiene una vista con pestañas cómoda para resultados y consultas, fácil clasificación y agrupación de resultados, IntelliSense, un buen "generador de consultas" para ayudar con la sintaxis, soporte para el control de versiones del código SQL y una buena depuración ¿modo?

¿Cuáles son buenas métricas para la polarización política en las redes sociales?