Calcul de z-scores robustes
Revenons au jeu de données transfers que nous avons utilisé au Chapitre 1.
Ce jeu de données contient 222 transactions, dont quatre cas de fraude avérés, indiqués par un 1 dans la variable fraud_flag. Nous avons déjà étudié les variables de fréquence et de récence.
Cette fois, nous allons nous concentrer uniquement sur la variable amount et tenter de détecter des fraudes en appliquant des techniques univariées de détection de valeurs aberrantes sur cette variable.
N'hésitez pas à explorer le jeu de données dans la Console pour vous remémorer sa structure. Vous pouvez aussi consulter le diaporama pour revoir les fonctions présentées dans la vidéo précédente.
Cet exercice fait partie du cours
Détection de fraude en R
Instructions
- Identifiez quelles observations sont marquées comme fraude.
- Calculez la médiane et l'écart absolu médian (MAD) pour la variable
amount. - Utilisez ces estimateurs robustes de position et de dispersion pour calculer le z-score robuste pour chaque observation.
- Quelles observations ont un z-score robuste strictement supérieur à 3 en valeur absolue ?
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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(___) > ___)