5 votos

¿Cuál es la diferencia entre un componente y un factor en el análisis paralelo?

El psych en R tiene un paquete fa.parallel para ayudar a determinar el número de factores o componentes. De la documentación:

Una forma de determinar el número de factores o componentes en un dato o una matriz de correlaciones es examinar el gráfico de "scree" de la sucesivos valores propios. Los cortes bruscos en el gráfico sugieren el número adecuado de componentes o factores a extraer. El análisis "paralelo" es una técnica alternativa que compara la escala de factores de los datos observados con la de una matriz de correlación. de los datos observados con el de una matriz de datos aleatoria del mismo tamaño que la original. fa.parallel.poly hace esto para los análisis tetracóricos o tetracorriente o policorriente.

Cuando ejecuto la función obtengo la siguiente salida:

Parallel analysis suggests that the number of factors =  7  
                            and the number of components =  4

¿Cuál es la diferencia entre un factor y un componente ?

0 votos

Parece que aquí hay una pregunta que no se responde en el duplicado, @rolando2: FA "rota" los componentes principales, por lo que debería (por derecho) producir exactamente tantos "factores" como "componentes". Este método de "análisis paralelo" (con el que no estoy familiarizado) parece seleccionar de alguna manera un número diferente de "factores".

4voto

GenericTypeTea Puntos 27689

Tal vez desee leer el libro de Dinno Aclaración de la aplicación del análisis paralelo de Horn al análisis de componentes principales frente al análisis factorial . He aquí una breve destilación:

El análisis de componentes principales (ACP) consiste en la descomposición propia de la matriz de correlación $\mathbf{R}$ (o menos comúnmente, la matriz de covarianza $\mathbf{\Sigma}$ ), para dar los vectores propios (que son generalmente lo que la interpretación sustantiva de PCA se trata), y los valores propios, $\mathbf{\Lambda}$ (que es en lo que se basan las decisiones empíricas de retención, como el análisis paralelo).

El análisis factorial común (AF) consiste en la descomposición propia de la matriz de correlación $\mathbf{R}$ con los elementos diagonales sustituidos por el comunalidades : $\mathbf{C} = \mathbf{R} - \text{diag}(\mathbf{R}^{+})^{+}$ , donde $\mathbf{R}^{+}$ indica el inversa generalizada (alias Inversa de Moore-Penrose ou pseudoinverso ) de la matriz $\mathbf{R}$ para dar también los vectores propios (que son también, en general, lo que la interpretación sustantiva de FA), y los valores propios, $\mathbf{\Lambda}$ (que, como en el caso del ACP, son en los que se basan las decisiones de retención empírica, como el análisis paralelo).

Los valores propios, $\mathbf{\Lambda} = \{\lambda_{1}, \dots, \lambda_{p}\}$ ( $p$ es igual al número de variables que producen $\mathbf{R}$ ) se ordenan de mayor a menor, y en un ACP basado en $\mathbf{R}$ se interpretan como el reparto de $p$ unidades de varianza total bajo el supuesto de que cada variable observada contribuye con 1 unidad a la varianza total. Cuando el ACP se basa en $\mathbf{\Sigma}$ y luego cada valor propio, $\lambda$ se interpreta como el reparto de $\text{trace}(\mathbf{\Sigma})$ unidades de varianza total bajo el supuesto de que cada variable contribuye con la magnitud de su varianza a la varianza total. En el AF, los valores propios se interpretan como un reparto de $< p$ unidades de variante común Esta interpretación es problemática, ya que los valores propios en FA pueden ser negativos y es difícil saber cómo interpretar dichos valores, tanto en términos de reparto como de varianza.

El procedimiento de análisis paralelo implica:

  1. Obtención de $\{\lambda_{1}, \dots, \lambda_{p}\}$ para los datos observados, $\mathbf{X}$ .
  2. Obtención de $\{\lambda^{r}_{1}, \dots, \lambda^{r}_{p}\}$ para datos no correlacionados (aleatorios) del mismo $n$ et $p$ como $\mathbf{X}$ .
  3. Repitiendo el paso 2 muchas veces, digamos $k$ número de veces.
  4. Promediando cada valor propio del paso 3 sobre $k$ para producir $\{\overline{\lambda}^{r}_{1}, \dots, \overline{\lambda}^{r}_{p}\}$ .
  5. Retención de los $q$ componentes o factores comunes donde $\lambda_{q} > \overline{\lambda}^{r}_{q}$

El análisis paralelo de Monte Carlo emplea un centil alto (por ejemplo, el 95 $^{\text{th}}$ ) en lugar de la media en el paso 4.

1 votos

Ya voté esta respuesta hace tiempo (+1), pero me gustaría comentar que el procedimiento de análisis factorial utilizado por el psych paquete no es lo que se describe en esta respuesta. Hay varios métodos comunes de extracción de factores (y psych implementa varios de ellos), pero hasta donde yo sé ninguno de ellos equivale a una descomposición propia de $\mathbf{C} = \mathbf{R} - \text{diag}(\mathbf{R}^{+})^{+}$ como parece implicar esta respuesta.

0 votos

@amoeba Gorsuch, R. L. (1983). Análisis de factores 2ª ed. NJ: Lawrence Erlbaum Associates. Por supuesto, hay otras formas de estimar las comunalidades (por ejemplo, factores iterados, etc.). Stata, por ejemplo, calcula los "factores principales" por defecto utilizando la matemática que he descrito.

0 votos

Tengo una copia electrónica de la primera edición de este libro. ¿Puede remitirme a una sección específica, por favor? En cualquier caso, he buscado el manual de psych y estoy bastante seguro de que el método que describes (aunque exista en la literatura) no está implementado allí.

3voto

Ankur Loriya Puntos 160

Habla de componentes principales. Primero, encuentra los valores propios de la matriz de correlación que toma como entrada. Luego decide cuántos de esos valores son "razonablemente grandes" haciendo simulaciones y comparándolos con los valores simulados. Aquí está la parte clave del código:

valuesx <- eigen(rx)$values

y más tarde:

pc.test <- which(!(valuesx > values.sim$mean))[1] - 1
        results$nfact <- fa.test
    results$ncomp <- pc.test
    cat("Parallel analysis suggests that ")
    cat("the number of factors = ", fa.test, " and the number of components = ", 
        pc.test, "\n")

Toda la función está escrita en R, por lo que puedes leer su código fuente escribiendo su nombre en el terminal de R.

Aquí hay una presentación que compara el análisis factorial con el ACP y espero que responda a su pregunta (vea la última diapositiva en particular):

http://www.stats.ox.ac.uk/~ripley/MultAnal_HT2007/PC-FA.pdf

1 votos

Entonces, si entiendo su respuesta, un factor es un resultado del análisis factorial. ¿Un componente es simplemente un resultado del análisis de componentes principales?

1 votos

Sí, creo que el paquete utiliza "componente" como abreviatura de "componente principal" en el resultado que ha citado.

1voto

Scott Puntos 1494

En realidad hay dos líneas, una para el pca y otra para el procedimiento minres (por defecto), a menos que se seleccione otro. El programa utiliza el fa$values y los valores propios fa$e.values . El fa$values son los valores de la solución del factor común. El fa$values son menores que los valores propios.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X