Tengo un marco de datos con muchas observaciones y muchas variables. Algunos de ellos son categóricos (no ordenados) y los otros son numéricos.
Estoy buscando asociaciones entre estas variables. He podido calcular la correlación para variables numéricas (correlación de Spearman) pero:
- No sé cómo medir la correlación entre variables categóricas desordenadas.
- No sé cómo medir la correlación entre variables categóricas desordenadas y variables numéricas.
¿Alguien sabe cómo se puede hacer esto? Si es así, ¿hay funciones R que implementen estos métodos?
Respuestas:
Depende de qué sentido de correlación desee. Cuando ejecuta la correlación de momento prototípica del producto de Pearson, obtiene una medida de la fuerza de asociación y obtiene una prueba de la importancia de esa asociación. Sin embargo, más típicamente, la prueba de significación y la medida del tamaño del efecto difieren.
Pruebas de significación:
Tamaño del efecto (fuerza de asociación):
fuente
Hmisc::rcorr
hace esto maravillosamente y podemos verificarlo (para un marco de datos de variables mixtas) de la siguiente manera:as.data.frame(rcorr(as.matrix(data_frame),type = "pearson")$P)
as.data.frame(rcorr(as.matrix(data_frame),type = "pearson")$r)
He visto la siguiente hoja de trucos vinculada anteriormente:
https://stats.idre.ucla.edu/other/mult-pkg/whatstat/
Te puede ser útil. Incluso tiene enlaces a bibliotecas R específicas.
fuente
Si desea una matriz de correlación de variables categóricas, puede usar la siguiente función de contenedor (que requiere el paquete 'vcd'):
Dónde:
vars
es un vector de cadena de variables categóricas que desea correlacionardat
es un data.frame que contiene las variablesEl resultado es una matriz de V de Cramer.
fuente
Tal análisis puede verse como una generalización del análisis de correspondencia múltiple, y se conoce con muchos nombres, tales como análisis de correlación canónica, análisis de homogeneidad y muchos otros. Una implementación en R está en el
homals
paquete (en CRAN). buscar en Google algunos de estos nombres dará una gran cantidad de información, hay un libro completo: Albert Gifi, "Análisis multivariado no lineal". ¡Buena suerte!fuente
Tuve un problema similar y probé la prueba de Chi-cuadrado como se sugirió, pero me confundí mucho al evaluar los valores P frente a la hipótesis NULL.
Explicaré cómo interpreté las variables categóricas. No estoy seguro de cuán relevante es en su caso. Tenía la variable de respuesta Y y dos variables predictoras X1 y X2 donde X2 era una variable categórica con dos niveles, digamos 1 y 2. Estaba tratando de ajustar un modelo lineal
Pero quería entender cómo los diferentes niveles de X2 se ajustan a la ecuación anterior. Encontré una función R por ()
Lo que hace este código es tratar de encajar en el modelo lineal para cada nivel de X2. Esto me dio todo el valor P y R-cuadrado, error estándar residual que entiendo y puedo interpretar.
De nuevo, no estoy seguro de si esto es lo que quieres. Comparé diferentes valores de X2 al predecir Y.
fuente
Para medir la fuerza del enlace entre dos variables categóricas, prefiero sugerir el uso de una tabla de referencias cruzadas con la estadística chisquare
Para medir la fuerza del enlace entre una variable numérica y una variable categórica, puede usar una comparación de medias para ver si cambia significativamente de una categoría a otras.
fuente