CommencezCommencez gratuitement

Beaucoup de k, beaucoup de modèles

Même si l'ensemble de données lineup a clairement une valeur connue de k, bien souvent le nombre optimal de grappes n'est pas connu et doit ê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 chacun, la somme totale des carrés intra-grappe. Ce sera la première étape pour visualiser le graphique du coude (elbow plot).

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 lineup avec des valeurs de k allant de 1 à 10 et extraire la valeur de somme totale des carrés intra-grappe de chaque modèle : model$tot.withinss. Stockez le vecteur résultant dans tot_withinss.
  • Créez un nouveau tableau de données elbow_df contenant les valeurs de k et le vecteur de somme totale des carrés intra-grappe.

Exercice interactif pratique

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

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