K-means auf einem Fußballfeld
Im vorherigen Kapitel hast du mit dem Datensatz lineup die hierarchische Clusteranalyse kennengelernt. In diesem Kapitel verwendest du dieselben Daten, um die K-means-Clusteranalyse zu lernen.
Zur Erinnerung: Der Data Frame lineup enthält die Positionen von 12 Spielerinnen und Spielern zu Beginn eines 6-gegen-6-Fußballspiels.
Wie zuvor weißt du, dass in diesem Spiel zwei Teams auf dem Feld stehen. Du kannst also eine K-means-Analyse mit k = 2 durchführen, um zu bestimmen, welche Spielerin bzw. welcher Spieler zu welchem Team gehört.
Beachte, dass in der Funktion kmeans() der Wert für k über den Parameter centers festgelegt wird.
Diese Übung ist Teil des Kurses
<Kurs>Clusteranalyse in R</Kurs>Übungsanweisungen
- Erstelle ein K-means-Modell namens
model_km2für die Datenlineupmit der Funktionkmeans()undcenters = 2. - Extrahiere den Vektor der Cluster-Zuordnungen aus dem Modell
model_km2$clusterund speichere ihn in der Variablenclust_km2. - Hänge die Cluster-Zuordnungen als Spalte
clusteran den Data Framelineupan und speichere das Ergebnis in einem neuen Data Frame namenslineup_km2. - Verwende ggplot, um die Positionen der einzelnen Spielerinnen und Spieler auf dem Feld zu visualisieren, und färbe sie nach ihrem Cluster ein.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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()