Dummy trap
Dummy trap คือสถานการณ์ที่ตัวแปร dummy หลายตัวให้ข้อมูลซ้ำซ้อนกัน ตัวอย่างเช่น หากพนักงานคนหนึ่งอยู่ในแผนก accounting (ค่าในคอลัมน์ accounting เท่ากับ 1) ก็หมายความว่าพนักงานคนนั้นไม่ได้อยู่ในแผนกอื่นเลย (ค่าในคอลัมน์อื่นทั้งหมดเป็น 0)
ดังนั้น เราสามารถทราบแผนกของพนักงานได้จากการดูคอลัมน์แผนกที่เหลือทั้งหมดอยู่แล้ว
ด้วยเหตุนี้ เมื่อสร้าง dummy \(n\) ตัว (ในกรณีนี้คือ 10 ตัว) จึงจำเป็นต้องใช้เพียง \(n\) - 1 ตัว (คือ 9 ตัว) เท่านั้น เพราะข้อมูลของคอลัมน์ที่ \(n\) นั้นถูกรวมอยู่ในคอลัมน์อื่นแล้ว
ดังนั้น ในแบบฝึกหัดนี้จะลบคอลัมน์ department เดิมออก แล้วลบคอลัมน์ dummy ของแผนกหนึ่งออกเพื่อหลีกเลี่ยง dummy trap จากนั้นจึงรวม DataFrame ทั้งสองเข้าด้วยกัน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
HR Analytics: การพยากรณ์การลาออกของพนักงานด้วย Python
คำแนะนำการฝึกหัด
- ใช้
.drop()เพื่อลบคอลัมน์accountingออก เพื่อหลีกเลี่ยง "dummy trap" - ใช้
.drop()เพื่อลบคอลัมน์departmentเดิมออก เนื่องจากไม่จำเป็นต้องใช้อีกต่อไป - รวม DataFrame
departmentsใหม่เข้ากับชุดข้อมูลemployee(ส่วนนี้ได้ดำเนินการให้แล้ว)
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Drop the "accounting" column to avoid "dummy trap"
departments = departments.____("____", axis=1)
# Drop the old column "department" as you don't need it anymore
data = data.____("____", axis=1)
# Join the new DataFrame "departments" to your employee dataset: done
data = data.join(departments)