IniziaInizia gratis

Verificare il rapporto tra frodi e non-frodi

In questo capitolo lavorerai su creditcard_sampledata.csv, un insieme di dati con transazioni con carta di credito. Le frodi, per fortuna, sono una rara minoranza tra queste transazioni.

Tuttavia, gli algoritmi di Machine Learning di solito funzionano meglio quando le diverse classi presenti nell’insieme di dati sono più o meno equilibrate. Se i casi di frode sono pochi, c’è poco da cui imparare per riconoscerli. Questo è noto come sbilanciamento di classe ed è una delle principali sfide nel rilevamento delle frodi.

Esploriamo questo insieme di dati e osserviamo da vicino il problema dello sbilanciamento di classe.

Questo esercizio fa parte del corso

Rilevamento delle frodi in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Importa pandas come pd, leggi i dati delle carte di credito e assegnali a df. Questo è già stato fatto per te.
  • Usa .info() per stampare le informazioni su df.
  • Usa .value_counts() per ottenere il conteggio delle transazioni fraudolente e non nella colonna 'Class'. Assegna il risultato a occ.
  • Calcola il rapporto tra le transazioni fraudolente e il numero totale di transazioni nell’insieme di dati.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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 / ____)
Modifica ed esegui il codice