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

ทดสอบ QuantileTransformer

การ Standardization มีจุดอ่อนเช่นเดียวกับ z-score เนื่องจากทั้งสองวิธีใช้ค่าเฉลี่ยและค่าเบี่ยงเบนมาตรฐานในการคำนวณ จึงมีความไวต่อค่าสุดขีดสูงมาก

เพื่อหลีกเลี่ยงปัญหานี้ ควรใช้ QuantileTransformer ซึ่งอาศัยควอนไทล์แทน ควอนไทล์ของการกระจายข้อมูลจะไม่เปลี่ยนแปลงไม่ว่าค่าผิดปกติจะมีขนาดใหญ่เพียงใด

ควรใช้ StandardScaler เมื่อข้อมูลมีการกระจายแบบปกติ (ตรวจสอบได้ด้วยฮิสโตแกรม) สำหรับการกระจายรูปแบบอื่น QuantileTransformer เป็นตัวเลือกที่เหมาะสมกว่า

ฝึกใช้งานกับชุดข้อมูล females ที่โหลดไว้แล้ว โดย matplotlib.pyplot ถูกโหลดด้วยชื่อย่อมาตรฐาน plt

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

การตรวจจับความผิดปกติใน Python

ดูคอร์ส

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

  • สร้าง QuantileTransformer() ที่แปลงฟีเจอร์ให้มีการกระจายแบบปกติ แล้วกำหนดให้กับตัวแปร qt
  • Fit และแปลงอาร์เรย์ฟีเจอร์ X พร้อมรักษาชื่อคอลัมน์ไว้
  • พล็อตฮิสโตแกรมของคอลัมน์ palmlength

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

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

from sklearn.preprocessing import QuantileTransformer

# Instantiate an instance that casts to normal
qt = ____

# Fit and transform the feature array
X.____ = ____

# Plot a histogram of palm length
plt.____(____, color='red')

plt.xlabel("Palm length")
plt.show()
แก้ไขและรันโค้ด