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

ค้นหาค่าผิดปกติด้วย z-score

การแจกแจงแบบปกติ (normal distribution) พบได้ทั่วไปในธรรมชาติและเป็นการแจกแจงที่ใช้บ่อยที่สุด นั่นจึงทำให้วิธี z-score เป็นหนึ่งในวิธีที่รวดเร็วที่สุดในการตรวจจับค่าผิดปกติ

จำกฎเกณฑ์เบื้องต้นจากวิดีโอได้ไหม? หากค่าตัวอย่างใดห่างจากค่าเฉลี่ยมากกว่าสามส่วนเบี่ยงเบนมาตรฐาน ค่านั้นถือว่าเป็นค่าสุดขีด

อย่างไรก็ตาม ควรใช้วิธี z-score ด้วยความระมัดระวัง วิธีนี้เหมาะสมก็ต่อเมื่อมั่นใจว่าข้อมูลมาจากการแจกแจงแบบปกติเท่านั้น มิฉะนั้นผลลัพธ์ที่ได้อาจทำให้เข้าใจผิดได้

การแจกแจงของ prices ถูกโหลดไว้ให้แล้ว

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

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

ดูคอร์ส

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

  • นำเข้าฟังก์ชัน zscore จากโมดูลที่เกี่ยวข้องใน scipy
  • คำนวณ z-score ของ prices แล้วเก็บผลไว้ใน scores
  • สร้าง boolean mask ชื่อ is_over_3 เพื่อตรวจสอบว่าค่าสัมบูรณ์ของ scores มากกว่า 3 หรือไม่
  • ใช้ mask นั้นกรองค่าผิดปกติออกจาก prices

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

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

# Import the zscores function
from scipy.____ import ____

# Find the zscores of prices
scores = ____(____)

# Check if the absolute values of scores are over 3
is_over_3 = ____

# Use the mask to subset prices
outliers = ____[____]

print(len(outliers))
แก้ไขและรันโค้ด