Kom igångKom igång gratis

K-means: Genomsnittliga silhuettbredder

Hierarkisk klustring gav 3 kluster och armbågsmetoden föreslår 2. I den här övningen använder du genomsnittliga silhuettbredder för att undersöka vilket värde på k som är bäst.

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

Klusteranalys i R

Visa kurs

Övningsinstruktioner

  • Använd map_dbl() för att köra pam() med oes-data för k-värden från 2 till 10, och extrahera den genomsnittliga silhuettbredden från varje modell: model$silinfo$avg.width. Spara den resulterande vektorn som sil_width.
  • Bygg en ny dataram sil_df med k-värdena och vektorn av genomsnittliga silhuettbredder.
  • Använd värdena i sil_df för att rita ett linjediagram som visar sambandet mellan k och genomsnittlig silhuettbredd.

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
sil_width <- map_dbl(2:10,  function(k){
  model <- pam(___, 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)
Redigera och kör kod