K-means: Analisis siku
Pada latihan sebelumnya Anda menggunakan dendrogram untuk mengusulkan pengelompokan yang menghasilkan 3 pohon. Pada latihan ini Anda akan memanfaatkan plot siku k-means untuk mengusulkan jumlah klaster "terbaik".
Latihan ini adalah bagian dari kursus
Analisis Klaster di R
Petunjuk latihan
- Gunakan
map_dbl()untuk menjalankankmeans()dengan dataoesuntuk nilai k dari 1 hingga 10 dan ekstrak nilai total within-cluster sum of squares dari setiap model:model$tot.withinss. Simpan vektor hasilnya sebagaitot_withinss. - Bangun data frame baru
elbow_dfyang berisi nilai k dan vektor total within-cluster sum of squares. - Gunakan nilai-nilai dalam
elbow_dfuntuk membuat plot garis yang menunjukkan hubungan antara k dan total within-cluster sum of squares.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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)