Vérifier le ratio fraude/non-fraude
Dans ce chapitre, vous travaillerez sur creditcard_sampledata.csv, un jeu de données contenant des transactions par carte bancaire. Les fraudes y sont heureusement une extrême minorité.
Cependant, les algorithmes de Machine Learning donnent généralement de meilleurs résultats lorsque les différentes classes du jeu de données sont plus ou moins également représentées. S’il y a peu de cas de fraude, il y a alors peu de données pour apprendre à les identifier. C’est ce qu’on appelle le déséquilibre de classes, et c’est l’un des principaux défis de la détection de fraude.
Explorons ce jeu de données et observons ce problème de déséquilibre de classes.
Cet exercice fait partie du cours
Détection de fraude en Python
Instructions
- Importez
pandassous l’aliaspd, lisez les données de carte bancaire et assignez-les àdf. Cela a été fait pour vous. - Utilisez
.info()pour afficher des informations surdf. - Utilisez
.value_counts()pour obtenir le nombre de transactions frauduleuses et non frauduleuses dans la colonne'Class'. Assignez le résultat àocc. - Calculez le ratio de transactions frauduleuses sur le nombre total de transactions du jeu de données.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import pandas and read csv
import pandas as pd
df = pd.read_csv("creditcard_data.csv")
# Explore the features available in your dataframe
print(df.____)
# Count the occurrences of fraud and no fraud and print them
occ = df['____'].____()
print(occ)
# Print the ratio of fraud cases
print(occ / ____)