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

การรวม level ตามสัดส่วน

หลายครั้งที่เราไม่ได้ต้องการระบุ level ที่จะเปลี่ยนหรือรวมเข้าด้วยกันอย่างเจาะจง แต่อยากเก็บเฉพาะ level ที่พบบ่อยที่สุดและจัดกลุ่มที่เหลือเป็น "other" แทน วิธีนี้มีประโยชน์มากเมื่อมี level จำนวนมากและส่วนใหญ่พบได้น้อย มาลองใช้กับคำถามจากการสำรวจของ Kaggle ที่ถามว่าผู้ตอบแบบสอบถามต้องการลองใช้วิธี machine learning ใดในปีถัดไป โดยได้โหลด multiple_choice_responses ไว้ให้แล้ว และเมื่อนับค่า ให้จำไว้ว่า sort = TRUE จะเรียงลำดับจากมากไปน้อยเป็นค่าเริ่มต้น

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

ข้อมูลเชิงหมวดหมู่ใน Tidyverse

ดูคอร์ส

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

  • ลบข้อมูลของผู้ที่ไม่ได้เลือกวิธีใดออก
  • สร้างตัวแปรใหม่ชื่อ ml_method จาก MLMethodNextYearSelect โดยเก็บ level ที่มีผู้ตอบเลือกอย่างน้อย 5% ไว้ และรวม level ที่เหลือเป็น "Other" (ค่าเริ่มต้น)
  • จากนั้นนับค่าของตัวแปรใหม่นี้ โดยเรียงลำดับจากมากไปน้อย

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

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

multiple_choice_responses %>%
  # Remove NAs of MLMethodNextYearSelect
  filter(___) %>%
  # Create ml_method, which lumps all those with less than 5% of people into "Other"
  mutate(ml_method = ___(MLMethodNextYearSelect, ___)) %>%
  # Count the frequency of your new variable, sorted in descending order
  ___(___, ___)
แก้ไขและรันโค้ด