Quién me conoce sabe que siento debilidad por el análisis de datos categóricos, en particular por técnicas como el análisis de correspondencias simple o múltiple o por las cosas más modernas que hay. No en vano se me dió especialmente bien en la universidad, en parte debido a que por fin me centré después de unos años locos, y en parte debido a algún buen profesor. El caso es que en el curro utilizamos este tipo de técnicas para encontrar relaciones entre variables categóricas que quizá hayan pasado desapercibidas en un primer análisis.
Esta entrada es una fe de erratas de esta de hace casi dos años.
Lo de la colina viene porque Carlos me comentaba el otro día, que en mi entrada había algo raro, ya que era muy extraño que al resumir información el modelo fuera peor. Y efectivamente, había algo raro, cuándo se lo comenté y que me tocaba hacer una fe de erratas, me dijo que si no lo hacía ya tenía una “colina dónde morir”, lo cual no está mal del todo.
Ando falto de ideas, no sé si es la pandemia, el teletrabajo ( o la esclavitud en tiempos modernos como me gusta llamarlo) u otra cosa. Total, que me he puesto a bichear un post antiguo de mi amigo Carlos Gil sobre NMF (factorización no negativa de matrices). Cómo siempre el lo cuenta mucho mejor que yo.
Total, que puede que en breve me toque tener algo a lo que quizá se pueda aplicar este tipo de técnicas, a saber, tener clientes y productos.
Hoy vamos a darle una (pequeña) vuelta de tuerca al tema de la reducción de dimensiones ( y por ende la codificación ) con variables categóricas y ordinales.
Aunque puede que muchos no lo sepan, existen dos escuelas derivadas de lo que Tukey llamaba el análisis exploratorio de datos, a saber, la francesa y la holandesa.
La francesa con exponentes como Jean-Paul Benzécri, Saporta o Lebart, resuelven el problema de proyectar las relaciones entre variables categóricas en un hiperplano de menor dimensión de forma analítica.
En el post anterior se me olvidó comentar que una parte importante es la interpretación.
library(psych) library(polycor) ## ## Attaching package: 'polycor' ## The following object is masked from 'package:psych': ## ## polyserial datos <- readRDS("../../data/science.rds") cor_poly <- hetcor(datos) ## Warning in log(P): Se han producido NaNs res_factorial <- fa(cor_poly$correlations, nfactors = 3, n.obs = nrow(datos)) ## Loading required namespace: GPArotation diagram(res_factorial) Dónde vemos que MR2 es un factor que tendrá valores altos para todos aqueellos que hayan puntuado alto en las preguntas de su grado de acuerdo con las frases.