K-means pada lapangan sepak bola
Pada bab sebelumnya, Anda menggunakan himpunan data lineup untuk mempelajari pengelompokan hierarchical; pada bab ini, Anda akan menggunakan data yang sama untuk mempelajari pengelompokan k-means.
Sebagai pengingat, data frame lineup memuat posisi 12 pemain pada awal pertandingan sepak bola 6 lawan 6.
Sama seperti sebelumnya, Anda tahu bahwa pertandingan ini memiliki dua tim di lapangan, sehingga Anda dapat melakukan analisis k-means dengan k = 2 untuk menentukan pemain mana yang termasuk ke tim mana.
Perhatikan bahwa pada fungsi kmeans(), nilai k ditentukan melalui parameter centers.
Latihan ini adalah bagian dari kursus
Analisis Klaster di R
Petunjuk latihan
- Bangun model k-means bernama
model_km2untuk datalineupmenggunakan fungsikmeans()dengancenters = 2. - Ekstrak vektor penetapan klaster dari model
model_km2$clusterdan simpan pada variabelclust_km2. - Tambahkan penetapan klaster sebagai kolom
clusterke data framelineupdan simpan hasilnya ke data frame baru bernamalineup_km2. - Gunakan ggplot untuk memetakan posisi setiap pemain di lapangan dan warnai berdasarkan klasternya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Build a kmeans model
model_km2 <- kmeans(___, centers = ___)
# Extract the cluster assignment vector from the kmeans model
clust_km2 <- ___
# Create a new data frame appending the cluster assignment
lineup_km2 <- mutate(___, cluster = ___)
# Plot the positions of the players and color them using their cluster
ggplot(___, aes(x = ___, y = ___, color = factor(___))) +
geom_point()