開始使用免費開始

用傳統方式探索如何抓出詐欺

在這個練習中,你要用「舊方法」嘗試在信用卡資料集中找出詐欺案例。你會先用常見的統計量來設定門檻值,將詐欺與非詐欺分開。接著,把這些門檻套用到特徵上以偵測詐欺。這在詐欺分析團隊中相當常見。

統計門檻通常透過觀察觀測值的平均數來決定。先從檢查詐欺與非詐欺案例之間各特徵的平均數是否不同開始。然後,你會用這些資訊來建立合理的門檻。最後,再檢查這樣做在詐欺偵測上的表現如何。

pandas 已經以 pd 名稱匯入。

本練習屬於課程

Fraud Detection in Python

檢視課程

練習說明

  • 使用 groupby() 以 Class 對 df 分組,並取得各特徵的平均值。
  • 建立條件:V1 小於 -3,且 V3 小於 -5,作為標記詐欺案例的依據。
  • 作為效能衡量,使用 pandas 的 crosstab 函式,將我們標記的詐欺案例與實際詐欺案例進行比較。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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']))
編輯並執行程式碼