Explorando a forma tradicional de detectar fraudes
Neste exercício, você vai tentar encontrar casos de fraude no nosso conjunto de dados de cartão de crédito do "jeito antigo". Primeiro, você vai definir valores de corte usando estatísticas comuns para separar fraude de não fraude. Depois, use esses limites nas suas variáveis para detectar fraudes. Isso é prática comum em equipes de análise de fraude.
Os limites estatísticos costumam ser definidos observando os valores de média das observações. Vamos começar verificando se as médias das variáveis diferem entre casos de fraude e não fraude. Em seguida, você usará essa informação para criar limites de bom senso. Por fim, você vai verificar o quão bem isso funciona na detecção de fraudes.
pandas já foi importado como pd.
Este exercício faz parte do curso
Detecção de Fraudes em Python
Instruções do exercício
- Use
groupby()para agrupardfporClasse obter a média das variáveis. - Crie a condição
V1menor que -3 eV3menor que -5 como critério para sinalizar casos de fraude. - Como medida de desempenho, use a função
crosstabdopandaspara comparar nossos casos sinalizados como fraude com os casos de fraude reais.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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']))