Začněte nyníZačněte zdarma

Zpět k datům velkoobchodu: „nejlepší" k

Na konci kapitoly 2 jsi prozkoumával/a data velkoobchodního distributora customers_spend pomocí hierarchického shlukování. Tentokrát tato data analyzuješ nástrojem k-means, který jsi se naučil/a v této kapitole.

Prvním krokem bude určit „nejlepší" hodnotu k pomocí průměrné šířky silhouette.

Krátké připomenutí: data obsahují záznamy o útratě 45 různých klientů velkoobchodního distributora v kategoriích Mléko, Potraviny a Mražené zboží. Jsou uložena v datovém rámci customers_spend. V tomto cvičení můžeš předpokládat, že data jsou všechna stejného typu (utracená částka), takže je není třeba škálovat.

Toto cvičení je součástí kurzu

Cluster Analysis v R

Zobrazit kurz

Pokyny k cvičení

  • Pomocí map_dbl() spusť pam() na datech customers_spend pro hodnoty k od 2 do 10 a z každého modelu vyextrahuj hodnotu průměrné šířky silhouette: model$silinfo$avg.width. Výsledný vektor ulož jako sil_width.
  • Vytvoř nový datový rámec sil_df obsahující hodnoty k a vektor průměrných šířek silhouette.
  • Pomocí hodnot z sil_df vykresli spojnicový graf zobrazující vztah mezi k a průměrnou šířkou silhouette.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Use map_dbl to run many models with varying value of k
sil_width <- map_dbl(2:10,  function(k){
  model <- pam(x = ___, k = ___)
  model$silinfo$avg.width
})

# Generate a data frame containing both k and sil_width
sil_df <- data.frame(
  k = ___,
  sil_width = ___
)

# Plot the relationship between k and sil_width
ggplot(___, aes(x = ___, y = ___)) +
  geom_line() +
  scale_x_continuous(breaks = 2:10)
Upravit a spustit kód