K-means: armbågskurveanalys
I de föregående övningarna använde du dendrogrammet för att föreslå en klustring med 3 träd. I den här övningen använder du k-means armbågskurva för att föreslå det "bästa" antalet kluster.
Den här övningen är en del av kursen
Klusteranalys i R
Övningsinstruktioner
- Använd
map_dbl()för att körakmeans()påoes-data med k-värden från 1 till 10, och extrahera värdet för total within-cluster sum of squares från varje modell:model$tot.withinss. Spara den resulterande vektorn somtot_withinss. - Bygg en ny dataram
elbow_dfsom innehåller värdena för k och vektorn med total within-cluster sum of squares. - Använd värdena i
elbow_dfför att rita ett linjediagram som visar sambandet mellan k och total within-cluster sum of squares.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)