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

การคำนวณคะแนน z แบบ robust

ลองมาดูชุดข้อมูล transfers ที่เราใช้ในบทที่ 1 อีกครั้ง ชุดข้อมูลนี้ประกอบด้วยธุรกรรม 222 รายการ และมีกรณีฉ้อโกงที่ทราบแล้ว 4 กรณี ซึ่งระบุด้วยค่า 1 ในตัวแปร fraud_flag ก่อนหน้านี้เราได้ศึกษาฟีเจอร์ด้านความถี่และความใหม่ของข้อมูลไปแล้ว ครั้งนี้จะมุ่งเน้นไปที่ตัวแปร amount เพียงตัวเดียว และพยายามตรวจจับกรณีฉ้อโกงโดยใช้เทคนิคการตรวจหาค่าผิดปกติแบบ univariate กับตัวแปรนี้

สามารถสำรวจชุดข้อมูลใน Console ได้หากต้องการทบทวนโครงสร้างข้อมูล และสามารถดูสไลด์เพื่อตรวจสอบฟังก์ชันที่แสดงในวิดีโอก่อนหน้าได้เช่นกัน

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

การตรวจจับการฉ้อโกงใน R

ดูคอร์ส

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

  • ระบุว่าข้อสังเกตใดถูกจัดว่าเป็นการฉ้อโกง
  • คำนวณมัธยฐานและค่าเบี่ยงเบนสัมบูรณ์ของมัธยฐาน (mad) สำหรับตัวแปร amount
  • ใช้ค่าประมาณ robust สำหรับตำแหน่งและการกระจายเพื่อคำนวณคะแนน z แบบ robust ของแต่ละข้อสังเกต
  • ข้อสังเกตใดมีคะแนน z แบบ robust สูงกว่า 3 ในค่าสัมบูรณ์?

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

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

# Get observations identified as fraud
which(___ == ___)

# Compute median and mean absolute deviation for `amount`
m <- median(___)
s <- ___(___)

# Compute robust z-score for each observation
robzscore <- abs((___ - ___) / (___))

# Get observations with robust z-score higher than 3 in absolute value
which(abs(___) > ___)
แก้ไขและรันโค้ด