Cómo crear un diagrama de Scree en R (paso a paso)

Actualizado el 7 de mayo de 2021, por Luis Benites.

El análisis de componentes principales (PCA) es una técnica de aprendizaje automático no supervisada que busca encontrar componentes principales (combinaciones lineales de las variables predictoras) que explican una gran parte de la variación en un conjunto de datos.

Cuando realizamos PCA, a menudo nos interesa comprender qué porcentaje de la variación total en el conjunto de datos puede explicarse por cada componente principal.

Una de las formas más fáciles de visualizar el porcentaje de variación explicado por cada componente principal es crear una gráfica de pantalla .

Este tutorial proporciona un ejemplo paso a paso de cómo crear un diagrama de pedregal en R.

Paso 1: Cargue el conjunto de datos

Para este ejemplo, usaremos un conjunto de datos llamado USArrests, que contiene datos sobre el número de arrestos por cada 100,000 residentes en cada estado de EE. UU. En 1973 por varios delitos.

El siguiente código muestra cómo cargar y ver las primeras filas de este conjunto de datos:

#load data
 data ("USArrests")

#ver las primeras seis filas del encabezado de datos
 (USArrests)

           Asesinato Asalto UrbanPop Violación
Alabama 13,2 236 58 21,2
Alaska 10,0 263 48 44,5
Arizona 8.1 294 80 31.0
Arkansas 8,8 190 50 19,5
California 9,0 276 91 40,6
Colorado 7,9 204 78 38,7

Paso 2: realizar PCA

A continuación, usaremos la función prcomp () integrada en R para realizar el análisis de componentes principales.

# realizar resultados de PCA
 <- prcomp (USArrests, scale = TRUE )

Paso 3: Cree el diagrama de Scree

Por último, calcularemos el porcentaje de la varianza total explicada por cada componente principal y usaremos ggplot2 para crear una gráfica de pantalla :

#calcular la varianza total explicada por cada componente principal
 var_explained = results $ sdev ^ 2 / sum (results $ sdev ^ 2)

#create biblioteca de gráficos de scree
 (ggplot2)

qplot (c (1: 4), var_explicado) + 
  geom_line () + 
  xlab (" Componente principal ") +
  ylab (" Explicación de la varianza ") +
  ggtitle (" Diagrama de Scree ") +
  ylim (0, 1)

Diagrama de pedregal en R

El eje x muestra el componente principal y el eje y muestra el porcentaje de la varianza total explicada por cada componente principal individual.

También podemos usar el siguiente código para mostrar el porcentaje exacto de la varianza total explicada por cada componente principal:

imprimir (var_explained)

[1] 0,62006039 0,24744129 0,08914080 0,04335752

Podemos ver:

  • El primer componente principal explica el 62,01% de la variación total en el conjunto de datos.
  • El segundo componente principal explica el 24,74% de la variación total en el conjunto de datos.
  • El tercer componente principal explica el 8,91% de la variación total en el conjunto de datos.
  • El cuarto componente principal explica el 4,34% de la variación total en el conjunto de datos.

Observe que todos los porcentajes suman 100%.

Puede encontrar más tutoriales de aprendizaje automático en esta página .

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

Deja un comentario

Las correlaciones continuas son correlaciones entre dos series de tiempo en una ventana móvil. Un beneficio de este tipo de…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!