CommencerCommencer gratuitement

Beaucoup de k, beaucoup de modèles

Même si l’ensemble de données lineup possède clairement une valeur connue de k, il arrive souvent que le nombre optimal de clusters ne soit pas connu et doive être estimé.

Dans cet exercice, vous utiliserez map_dbl() de la bibliothèque purrr pour exécuter k-means avec des valeurs de k allant de 1 à 10 et extraire, pour chacune, la métrique de somme des carrés intra-cluster totale. Ce sera la première étape vers la visualisation du graphique du coude (elbow plot).

Cet exercice fait partie du cours

Analyse de clusters avec R

Afficher le cours

Instructions

  • Utilisez map_dbl() pour exécuter kmeans() sur les données lineup avec des valeurs de k allant de 1 à 10 et extraire, pour chaque modèle, la valeur de somme des carrés intra-cluster totale : model$tot.withinss. Stockez le vecteur obtenu dans tot_withinss.
  • Construisez un nouveau data frame elbow_df contenant les valeurs de k et le vecteur de somme des carrés intra-cluster totale.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

library(purrr)

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