Mnoho hodnot k, mnoho modelů
Zatímco u datasetu lineup je hodnota k jasně daná, v praxi optimální počet clusterů zpravidla předem neznáme a musíme ho odhadnout.
V tomto cvičení využiješ funkci map_dbl() z knihovny purrr ke spuštění k-means pro hodnoty k od 1 do 10 a z každého modelu extrahuješ metriku celkového součtu čtverců uvnitř clusterů. Toto bude první krok k vizualizaci tzv. elbow plotu.
Toto cvičení je součástí kurzu
Cluster Analysis v R
Pokyny k cvičení
- Pomocí
map_dbl()spusťkmeans()na datechlineuppro hodnoty k od 1 do 10 a z každého modelu extrahuj hodnotu celkového součtu čtverců uvnitř clusterů:model$tot.withinss. Výsledný vektor ulož jakotot_withinss. - Vytvoř nový datový rámec
elbow_dfobsahující hodnoty k a vektor celkových součtů čtverců uvnitř clusterů.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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 = ___
)