การแปลงข้อมูลสำหรับ Train และ Test (II)
เช่นเดียวกับการใช้ scaler ตัวเดียวกันกับทั้งชุด train และ test หากลบ outlier ออกจากชุด train แล้ว ควรทำเช่นเดียวกันกับชุด test ด้วย สิ่งสำคัญคือต้องใช้ ค่า threshold ที่คำนวณจากชุด train เท่านั้น ในการลบ outlier ออกจากชุด test
เช่นเดียวกับแบบฝึกหัดที่แล้ว เราแบ่ง DataFrame so_numeric_df ออกเป็นชุด train (so_train_numeric) และชุด test (so_test_numeric)
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Feature Engineering สำหรับ Machine Learning ใน Python
คำแนะนำการฝึกหัด
- คำนวณค่าเบี่ยงเบนมาตรฐานและค่าเฉลี่ยของคอลัมน์
ConvertedSalary - คำนวณขอบเขตบนและขอบเขตล่างโดยใช้ระยะสามเท่าของค่าเบี่ยงเบนมาตรฐานจากค่าเฉลี่ยทั้งสองทิศทาง
- ตัด DataFrame
so_test_numericให้เหลือเฉพาะแถวที่ค่าConvertedSalaryอยู่ภายในขอบเขตล่างและขอบเขตบน
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
train_std = so_train_numeric['ConvertedSalary'].____
train_mean = so_train_numeric['ConvertedSalary'].____
cut_off = train_std * 3
train_lower, train_upper = ____, train_mean + cut_off
# Trim the test DataFrame
trimmed_df = so_test_numeric[(so_test_numeric['ConvertedSalary'] < ____) \
& (so_test_numeric['ConvertedSalary'] > ____)]