EmpezarEmpieza gratis

Comprobando la proporción fraude/no fraude

En este capítulo, trabajarás con creditcard_sampledata.csv, un conjunto de datos con transacciones de tarjeta de crédito. Afortunadamente, los casos de fraude son una minoría extrema en estas transacciones.

Sin embargo, los algoritmos de Machine Learning suelen funcionar mejor cuando las distintas clases del conjunto de datos están más o menos equilibradas. Si hay pocos casos de fraude, hay pocos datos para aprender a identificarlos. A esto se le conoce como desbalanceo de clases, y es uno de los principales retos de la detección de fraude.

Vamos a explorar este conjunto de datos y a observar este problema de desbalanceo de clases.

Este ejercicio forma parte del curso

Fraud Detection in Python

Ver curso

Instrucciones del ejercicio

  • Importa pandas como pd, lee los datos de la tarjeta de crédito y asígnalos a df. Ya lo hemos hecho por ti.
  • Usa .info() para imprimir información sobre df.
  • Usa .value_counts() para obtener el recuento de transacciones fraudulentas y no fraudulentas en la columna 'Class'. Asigna el resultado a occ.
  • Calcula la proporción de transacciones fraudulentas sobre el número total de transacciones del conjunto de datos.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# 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 / ____)
Editar y ejecutar código