Zacznij terazZacznij za darmo

K-means na boisku piłkarskim

W poprzednim rozdziale używałeś(-aś) zbioru danych lineup do nauki hierarchicznego grupowania – w tym rozdziale wykorzystasz te same dane, by poznać grupowanie metodą k-means. Dla przypomnienia: ramka danych lineup zawiera pozycje 12 zawodników na początku meczu piłki nożnej w formacie 6 na 6.

Podobnie jak wcześniej, wiesz, że na boisku grają dwie drużyny. Możesz więc przeprowadzić analizę k-means z parametrem k = 2, aby określić, który zawodnik należy do której drużyny.

Zwróć uwagę, że w funkcji kmeans() wartość k podaje się za pomocą parametru centers.

To ćwiczenie jest częścią kursu

Analiza skupień w R

Zobacz kurs

Instrukcje do ćwiczenia

  • Zbuduj model k-means o nazwie model_km2 dla zbioru danych lineup, używając funkcji kmeans() z argumentem centers = 2.
  • Wyodrębnij wektor przypisań do klastrów z modelu – model_km2$cluster – i zapisz go w zmiennej clust_km2.
  • Dodaj przypisania do klastrów jako kolumnę cluster do ramki danych lineup i zapisz wynik do nowej ramki danych o nazwie lineup_km2.
  • Użyj ggplot, aby wykreślić pozycje zawodników na boisku i pokolorować je według przynależności do klastra.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod