Varianza explicada
En este ejercicio, vas a generar gráficos de sedimentación (scree plots) que muestran la proporción de varianza explicada a medida que aumenta el número de componentes principales. Los datos del PCA deben prepararse para estos gráficos, ya que no existe una función incorporada en R que los cree directamente a partir del modelo de PCA.
Al observar estos gráficos, plantéate si hay un “codo” en la cantidad de varianza explicada que te lleve a elegir un número natural de componentes principales. Si no hay un codo claro, como suele ocurrir con conjuntos de datos reales, piensa en otras formas de determinar cuántos componentes principales conservar basándote en el scree plot.
Este ejercicio forma parte del curso
Unsupervised Learning in R
Instrucciones del ejercicio
Las variables que creaste antes, wisc.data, diagnosis y wisc.pr, siguen disponibles.
- Calcula la varianza de cada componente principal elevando al cuadrado el componente
sdevdewisc.pr. Guarda el resultado en un objeto llamadopr.var. - Calcula la varianza explicada por cada componente principal dividiendo entre la varianza total explicada de todos los componentes principales. Asigna esto a una variable llamada
pve. - Crea un gráfico de la varianza explicada para cada componente principal.
- Usando la función
cumsum(), crea un gráfico de la proporción acumulada de varianza explicada.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Set up 1 x 2 plotting grid
par(mfrow = c(1, 2))
# Calculate variability of each component
# Variance explained by each principal component: pve
# Plot variance explained for each principal component
plot(___, xlab = "Principal Component",
ylab = "Proportion of Variance Explained",
ylim = c(0, 1), type = "b")
# Plot cumulative proportion of variance explained
plot(___, xlab = "Principal Component",
ylab = "Cumulative Proportion of Variance Explained",
ylim = c(0, 1), type = "b")