ตัวแปรที่มีความสัมพันธ์กัน
10 ตัวแปรแรกที่ถูกเพิ่มเข้าโมเดลมีดังนี้:
['max_gift', 'number_gift', 'time_since_last_gift', 'mean_gift', 'income_high', 'age', 'country_USA', 'gender_F', 'income_low', 'country_UK']
จะเห็นว่า min_gift ไม่ได้ถูกเพิ่มเข้ามา แต่นั่นหมายความว่ามันเป็นตัวแปรที่ไม่ดีหรือเปล่า? ลองทดสอบประสิทธิภาพของตัวแปรนี้โดยใช้มันในโมเดลเดี่ยว แล้วคำนวณค่า AUC ดู ค่า AUC ของ min_gift เทียบกับ income_high เป็นอย่างไร? สามารถใช้ฟังก์ชัน auc() ได้ดังนี้:
auc(variables, target, basetable)
บางครั้งตัวแปรที่ดีอาจไม่ถูกเพิ่มเข้าโมเดล เนื่องจากมีความสัมพันธ์สูงกับตัวแปรที่อยู่ในโมเดลอยู่แล้ว ลองทดสอบโดยคำนวณค่าสหสัมพันธ์ระหว่างตัวแปรเหล่านี้:
import numpy
numpy.corrcoef(basetable["variable_1"],basetable["variable_2"])[0,1]
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์เชิงพยากรณ์เบื้องต้นด้วย Python
คำแนะนำการฝึกหัด
- คำนวณค่า AUC ของโมเดลโดยใช้เฉพาะตัวแปร
min_gift - คำนวณค่า AUC ของโมเดลโดยใช้เฉพาะตัวแปร
income_high - คำนวณค่าสหสัมพันธ์ระหว่างตัวแปร
min_giftและmean_gift
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
import numpy as np
# Calculate the AUC of the model using min_gift only
auc_min_gift = auc([____], ["target"], ____)
print(round(auc_min_gift,2))
# Calculate the AUC of the model using income_high only
auc_income_high = ____([____], [____], ____)
print(round(auc_income_high,2))
# Calculate the correlation between min_gift and mean_gift
correlation = np.corrcoef(basetable["____"], basetable["____"])[0,1]
print(round(correlation,2))