เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

K-means บนสนามฟุตบอล (ตอนที่ 2)

ในแบบฝึกหัดก่อนหน้า คุณได้ใช้อัลกอริทึม k-means เพื่อจัดกลุ่มผู้เล่นทั้งสองทีมจาก data frame lineup สำเร็จแล้ว คราวนี้ลองมาดูว่าจะเกิดอะไรขึ้นเมื่อใช้ค่า k เป็น 3

อัลกอริทึมยังคงทำงานได้ แต่ผลลัพธ์ที่ได้นั้นสมเหตุสมผลในบริบทนี้จริงหรือเปล่า…

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การวิเคราะห์กลุ่มข้อมูลใน R

ดูคอร์ส

คำแนะนำการฝึกหัด

  • สร้างโมเดล k-means ชื่อ model_km3 จากข้อมูล lineup โดยใช้ฟังก์ชัน kmeans() พร้อมกำหนด centers = 3
  • ดึงเวกเตอร์ของการจัดกลุ่มจากโมเดล model_km3$cluster แล้วเก็บไว้ในตัวแปร clust_km3
  • เพิ่มผลการจัดกลุ่มเป็นคอลัมน์ cluster ใน data frame lineup แล้วบันทึกผลลัพธ์ลงใน data frame ใหม่ชื่อ lineup_km3
  • ใช้ ggplot วาดตำแหน่งของผู้เล่นแต่ละคนบนสนาม โดยแสดงสีตามกลุ่มที่จัดไว้

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Build a kmeans model
model_km3 <- ___

# Extract the cluster assignment vector from the kmeans model
clust_km3 <- ___

# Create a new data frame appending the cluster assignment
lineup_km3 <- ___

# Plot the positions of the players and color them using their cluster
ggplot(___, aes(x = ___, y = ___, color = factor(___))) +
  geom_point()
แก้ไขและรันโค้ด