IniziaInizia gratis

Over-sampling casuale

Solo una piccolissima frazione dei bonifici è fraudolenta. Ora andrai a sovracampionare i casi di frode per equilibrare la distribuzione delle classi. La variabile Class nell’insieme di dati creditcard vale 1 in caso di frode e 0 altrimenti.

Puoi usare la console per visualizzare le colonne di creditcard con str(), stampare le prime 6 righe del dataset con head() e controllare l’equilibrio della variabile Class con table(creditcard$Class).

Questo esercizio fa parte del corso

Rilevamento delle frodi in R

Visualizza il corso

Istruzioni dell'esercizio

  • Carica il pacchetto ROSE.
  • Definisci n_new come il numero richiesto di casi nel dataset sovracampionata in modo che il nuovo dataset contenga 30% di casi di frode e quindi 70% di casi legittimi. Per farlo, devi dividere il numero esistente di casi legittimi per la percentuale desiderata di casi legittimi nel dataset sovracampionata.
  • Usa la funzione ovun.sample() per l’over-sampling usando Class ~ . come formula.
  • Verifica l’equilibrio tra classi del dataset sovracampionata.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Load ROSE
___

# Calculate the total number of required cases in the over-sampled dataset
print(table(creditcard$Class))
n_new <- ___

# Over-sample
oversampling_result <- ___(formula = ___, data = ___,
                           method = ___, N = ___, seed = 2018)

# Verify the Class-balance of the over-sampled dataset
oversampled_credit <- oversampling_result$data
prop.table(___(___))
Modifica ed esegui il codice