CommencezCommencez gratuitement

Variance expliquée

Dans cet exercice, vous allez produire des diagrammes d'éboulis (scree plots) montrant la proportion de variance expliquée à mesure que le nombre de composantes principales augmente. Les données issues de l'ACP doivent être préparées pour ces graphiques, puisqu'il n'existe pas de fonction intégrée dans R pour les créer directement à partir du modèle d'ACP.

En examinant ces graphiques, demandez-vous s'il y a un « coude » dans la variance expliquée qui vous amènerait à choisir un nombre naturel de composantes principales. Si aucun coude évident n'apparaît, comme c'est souvent le cas avec des jeux de données réels, réfléchissez à d'autres façons de déterminer combien de composantes principales conserver à partir du diagramme d'éboulis.

Cette activité fait partie du cours

Apprentissage non supervisé en R

Voir le cours

Instructions de l’exercice

Les variables que vous avez créées plus tôt, wisc.data, diagnosis et wisc.pr, sont toujours disponibles.

  • Calculez la variance de chaque composante principale en élevant au carré l'élément sdev de wisc.pr. Enregistrez le résultat dans un objet nommé pr.var.
  • Calculez la variance expliquée par chaque composante principale en divisant par la variance totale expliquée de l'ensemble des composantes principales. Assignez cela à une variable appelée pve.
  • Créez un graphique de la variance expliquée pour chaque composante principale.
  • À l'aide de la fonction cumsum(), créez un graphique de la proportion cumulative de variance expliquée.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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")
Modifier et exécuter le code