Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python - แปลง Pandas DataFrame เป็น Binary Data (One-Hot Encoding)

ใช้ pd.get_dummies() แปลงคอลัมน์ Categorical ให้เป็น Binary Columns (One-Hot Encoding) 0 และ 1

ตัวอย่างโค้ด

import pandas as pd

dataFrame = pd.DataFrame({
    "Student": ['Jack', 'Robin', 'Ted', 'Scarlett', 'Kat'],
    "Result": ['Pass', 'Fail', 'Fail', 'Pass', 'Pass']
})

print("DataFrame ...\n", dataFrame)

# Convert 'Result' column to binary (One-Hot)
dfBinary = pd.get_dummies(dataFrame["Result"])

print("\nDisplaying DataFrame in Binary form...\n", dfBinary)

ผลลัพธ์

Displaying DataFrame in Binary form...
   Fail  Pass
0     0     1
1     1     0
2     1     0
3     0     1
4     0     1

คำอธิบาย

  • pd.get_dummies(series) สร้างคอลัมน์ใหม่สำหรับแต่ละ Unique Value
  • ค่า 1 = มีค่านั้น, 0 = ไม่มี
  • Default: Prefix เป็นชื่อคอลัมน์เดิม (Result_Pass, Result_Fail) ถ้าใช้กับ DataFrame
  • พารามิเตอร์ drop_first=True ลบคอลัมน์แรกเพื่อหลีกเลี่ยง Dummy Variable Trap