BaşlayınÜcretsiz başlayın

Toptan verilerine yeniden bakış: "En iyi" k

Bölüm 2'nin sonunda, hiyerarşik kümeleme kullanarak toptan dağıtıcı verisi customers_spend üzerinde çalıştın. Bu kez, bu bölümde ele alınan k-means kümeleme araçlarıyla aynı veriyi analiz edeceksin.

İlk adım, ortalama siluet genişliğini kullanarak "en iyi" k değerini belirlemek olacak.

Veriyle ilgili kısa bir hatırlatma: Bir toptan dağıtıcının 45 farklı müşterisinin Milk, Grocery ve Frozen gıda kategorilerine yaptığı harcama tutarlarını içeriyor. Bu veriler customers_spend adlı veri çerçevesinde tutuluyor. Bu egzersizde tüm değişkenler aynı türde (harcama tutarı) olduğundan ölçekleme yapmana gerek olmadığını varsayabilirsin.

Bu egzersiz, kursun bir parçasıdır

R ile Kümeleme Analizi

Kursa Göz Atın

Egzersiz talimatları

  • map_dbl() kullanarak pam() fonksiyonunu customers_spend verisi üzerinde k değerleri 2'den 10'a kadar olacak şekilde çalıştır ve her modelden ortalama siluet genişliği değerini çıkar: model$silinfo$avg.width. Ortaya çıkan vektörü sil_width olarak sakla.
  • k değerleri ile ortalama siluet genişlikleri vektörünü içeren yeni bir veri çerçevesi sil_df oluştur.
  • sil_df içindeki değerleri kullanarak k ile ortalama siluet genişliği arasındaki ilişkiyi gösteren bir çizgi grafiği çiz.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# 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)
Kodu Düzenle ve Çalıştır