Kom igångKom igång gratis

Många k-värden, många modeller

I lineup-datamängden är värdet på k känt, men ofta är det optimala antalet kluster okänt och måste uppskattas.

I den här övningen använder du map_dbl() från biblioteket purrr för att köra k-means med k-värden från 1 till 10 och extrahera måttet total inom-kluster kvadratsumma från varje modell. Det här är första steget mot att visualisera ett armbågssdiagram.

Den här övningen är en del av kursen

Klusteranalys i R

Visa kurs

Övningsinstruktioner

  • Använd map_dbl() för att köra kmeans()lineup-data med k-värden från 1 till 10 och extrahera värdet för total inom-kluster kvadratsumma från varje modell: model$tot.withinss. Spara den resulterande vektorn som tot_withinss.
  • Bygg en ny dataram elbow_df som innehåller k-värdena och vektorn med total inom-kluster kvadratsumma.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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 = ___
)
Redigera och kör kod