CommencezCommencez gratuitement

K-means : analyse du coude

Dans les exercices précédents, vous avez utilisé le dendrogramme pour proposer un regroupement qui générait 3 groupes. Dans cet exercice, vous allez exploiter le graphique du coude pour k-means afin de proposer le « meilleur » nombre de groupes.

Cette activité fait partie du cours

Analyse de regroupements dans R

Voir le cours

Instructions de l’exercice

  • Utilisez map_dbl() pour exécuter kmeans() sur les données oes avec des valeurs de k allant de 1 à 10 et extraire, pour chaque modèle, la valeur du total des carrés des distances intra‑groupes : model$tot.withinss. Stockez le vecteur obtenu dans tot_withinss.
  • Créez un nouveau tableau de données elbow_df contenant les valeurs de k et le vecteur du total des carrés des distances intra‑groupes.
  • Utilisez les valeurs de elbow_df pour tracer un graphique linéaire montrant la relation entre k et le total des carrés des distances intra‑groupes.

Exercice interactif pratique

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

# Use map_dbl to run many models with varying value of k (centers)
tot_withinss <- map_dbl(1:10,  function(k){
  model <- kmeans(x = ___, centers = ___)
  model$tot.withinss
})

# Generate a data frame containing both k and tot_withinss
elbow_df <- data.frame(
  k = ___,
  tot_withinss = ___
)

# Plot the elbow plot
ggplot(elbow_df, aes(x = ___, y = ___)) +
  geom_line() +
  scale_x_continuous(breaks = 1:10)
Modifier et exécuter le code