Tengo dificultades para realizar un análisis factorial en mi conjunto de datos.
Cuando realizo el análisis factorial en SPSS (configuración por defecto), funciona bien. El problema es que necesito hacerlo programáticamente (en Python). Cuando intento usar Python (biblioteca MDP) para realizar el análisis factorial en el mismo conjunto de datos, obtengo este error:
"La matriz de covarianza de los datos es singular. Se deben eliminar dimensiones redundantes".
Al investigar en la documentación de MDP, dice "...devuelve la estimación del Máximo A Posteriori de las variables latentes." Siendo nuevo en el análisis factorial, no estaba muy claro en lo que esto significaba, pero intenté cambiar el método de extracción por defecto en SPSS de "componentes principales" a "máxima verosimilitud". Luego, en SPSS, obtengo el error:
"Esta matriz no es definida positiva".
¿Son estos dos errores lo mismo? En cualquier caso, ¿qué puedo hacer para corregir mi conjunto de datos para que la matriz de covarianza no sea singular?
¡Gracias!
editar: OK, estaba tratando de mantener las cosas simplificadas, pero tal vez es mejor explicar todo desde el principio.
Tengo una serie de documentos. Sí, solo estoy usando 9 documentos como un caso de prueba simple, pero mi objetivo final será utilizarlo en un corpus mucho más grande.
He construido una matriz término-documento, realizado tf-idf e hice SVD, en su mayoría con la ayuda de blog.josephwilk.net/.../latent-semantic-analysis-in-python.html
Ahora tengo una matriz reconstruida, y quiero clasificar los documentos en categorías. Así que intenté usar el análisis factorial. De hecho, parece funcionar: cuando lo coloco en SPSS, las cargas factoriales indican que los documentos están agrupados de la manera en que creí que deberían estar, y las cargas son más altas que si no hubiera realizado SVD. (Aunque creo técnicamente, SPSS está haciendo PCA aunque esté bajo la sección de 'Análisis Factorial').
Intenté usar el nodo PCANode de MDP, pero eso no parece darme algo cercano a lo que quiero. Curiosamente, si transpongo mi matriz, el análisis factorial funciona (agrupará los términos, en lugar de los documentos).
Espero que todo esto tenga un poco más de sentido ahora...