K-means: Elbow-analyse
In de vorige oefeningen gebruikte je het dendrogram om een clustering met 3 groepen voor te stellen. In deze oefening gebruik je de k-means elbow-plot om het "beste" aantal clusters te bepalen.
Deze oefening maakt deel uit van de cursus
Clusteranalyse in R
Oefeninstructies
- Gebruik
map_dbl()omkmeans()uit te voeren op deoes-gegevens voor k-waarden van 1 tot en met 10 en haal uit elk model de waarde van de totale som van kwadraten binnen clusters op:model$tot.withinss. Sla de resulterende vector op alstot_withinss. - Maak een nieuw data frame
elbow_dfmet de k-waarden en de vector met de totale som van kwadraten binnen clusters. - Gebruik de waarden in
elbow_dfom een lijngrafiek te maken die de relatie toont tussen k en de totale som van kwadraten binnen clusters.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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)