Menjelajahi cara tradisional menangkap kecurangan
Dalam latihan ini, Anda akan mencoba menemukan kasus kecurangan pada himpunan data kartu kredit dengan cara "lama". Pertama, Anda akan menentukan nilai ambang menggunakan statistik umum untuk memisahkan kecurangan dan bukan kecurangan. Lalu, gunakan ambang tersebut pada fitur untuk mendeteksi kecurangan. Ini adalah praktik umum di tim analitik kecurangan.
Ambang statistik sering ditentukan dengan melihat nilai mean dari pengamatan. Mari mulai latihan ini dengan memeriksa apakah mean fitur berbeda antara kasus kecurangan dan bukan kecurangan. Selanjutnya, Anda akan menggunakan informasi tersebut untuk membuat ambang berbasis akal sehat. Terakhir, Anda akan memeriksa seberapa baik kinerjanya dalam deteksi kecurangan.
pandas sudah diimpor sebagai pd.
Latihan ini adalah bagian dari kursus
Deteksi Kecurangan di Python
Petunjuk latihan
- Gunakan
groupby()untuk mengelompokkandfberdasarkanClassdan peroleh mean dari fitur. - Buat kondisi
V1lebih kecil dari -3, danV3lebih kecil dari -5 sebagai kondisi untuk menandai kasus kecurangan. - Sebagai ukuran kinerja, gunakan fungsi
crosstabdaripandasuntuk membandingkan kasus kecurangan yang kita tandai dengan kasus kecurangan aktual.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Get the mean for each group
____.____(____).mean()
# Implement a rule for stating which cases are flagged as fraud
df['flag_as_fraud'] = np.where(np.logical_and(______), 1, 0)
# Create a crosstab of flagged fraud cases versus the actual fraud cases
print(____(df.Class, df.flag_as_fraud, rownames=['Actual Fraud'], colnames=['Flagged Fraud']))