CommencezCommencez gratuitement

Calculer des 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 et quatre cas de fraude connus, indiqués par un 1 dans la variable fraud_flag. Nous avons déjà étudié les caractéristiques de fréquence et de récence. Cette fois, nous allons nous concentrer uniquement sur la variable amount et tenter de détecter les fraudes en appliquant des techniques univariées de détection des valeurs aberrantes sur cette variable.

N'hésitez pas à explorer le jeu de données dans la Console si vous souhaitez vous rafraîchir la mémoire quant à sa structure. Vous pouvez aussi consulter le diaporama pour revoir les fonctions présentées dans la vidéo précédente.

Cette activité fait partie du cours

Détection de la fraude en R

Voir le cours

Instructions de l’exercice

  • Repérez quelles observations sont identifiées comme des fraudes.
  • Calculez la médiane et l'écart absolu médian (mad) pour la variable amount.
  • Utilisez les estimateurs robustes de position et de dispersion pour calculer le z-score robuste pour chaque observation.
  • Quelles observations ont un z-score robuste supérieur à 3 en valeur absolue ?

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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