CommencerCommencer gratuitement

Explorer la méthode traditionnelle pour détecter la fraude

Dans cet exercice, vous allez essayer de repérer des cas de fraude dans notre jeu de données de cartes bancaires à « l’ancienne ». Vous allez d’abord définir des seuils à partir de statistiques courantes pour séparer fraude et non‑fraude. Puis, vous appliquerez ces seuils à vos variables pour détecter la fraude. C’est une pratique répandue dans les équipes d’analytique de fraude.

Les seuils statistiques sont souvent déterminés en observant les valeurs de moyenne des observations. Commençons par vérifier si les moyennes des variables diffèrent entre les cas frauduleux et non frauduleux. Ensuite, vous utiliserez ces informations pour créer des seuils « de bon sens ». Enfin, vous évaluerez les performances de cette approche pour la détection de fraude.

pandas a déjà été importé sous l’alias pd.

Cet exercice fait partie du cours

Détection de fraude en Python

Afficher le cours

Instructions

  • Utilisez groupby() pour regrouper df par Class et obtenir la moyenne des variables.
  • Créez la condition : V1 inférieur à -3 et V3 inférieur à -5 pour marquer les cas suspects de fraude.
  • Comme mesure de performance, utilisez la fonction crosstab de pandas pour comparer nos cas de fraude signalés aux cas de fraude réels.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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']))
Modifier et exécuter le code