Kom igångKom igång gratis

K-means på en fotbollsplan

I det föregående kapitlet använde du datamängden lineup för att lära dig om hierarkisk klustring. I det här kapitlet använder du samma data för att utforska k-means-klustring. Som en påminnelse: dataramen lineup innehåller positionerna för 12 spelare vid starten av en 6v6-fotbollsmatch.

Precis som tidigare vet du att matchen spelas med två lag, vilket innebär att du kan utföra en k-means-analys med k = 2 för att avgöra vilket lag varje spelare tillhör.

Observera att k anges med parametern centers i funktionen kmeans().

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

Klusteranalys i R

Visa kurs

Övningsinstruktioner

  • Bygg en k-means-modell kallad model_km2 för datamängden lineup med funktionen kmeans() och ange centers = 2.
  • Extrahera vektorn med klusterindelningar från modellen via model_km2$cluster och spara den i variabeln clust_km2.
  • Lägg till klusterindelningarna som en kolumn cluster i dataramen lineup och spara resultatet i en ny dataram kallad lineup_km2.
  • Använd ggplot för att visualisera varje spelares position på planen och färgkoda dem efter kluster.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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()
Redigera och kör kod