ÎncepețiÎncepe gratuit

Supra-eșantionare aleatoare

Doar o fracțiune foarte mică din transferurile de credit sunt frauduloase. Acum vei supra-eșantiona cazurile de fraudă pentru a echilibra distribuția claselor. Caracteristica Class din setul de date creditcard ia valoarea 1 în caz de fraudă și 0 în caz contrar.

Poți folosi consola pentru a afișa coloanele din 'creditcard' cu str(), pentru a afișa primele 6 rânduri ale setului de date cu head() și pentru a verifica echilibrul clasei cu table(creditcard$Class).

Acest exercițiu face parte din cursul

Detecția fraudelor în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Încarcă pachetul ROSE.
  • Specifică n_new ca numărul necesar de cazuri în setul de date supra-eșantionat, astfel încât noul set de date să conțină 30% cazuri de fraudă și, prin urmare, 70% cazuri legitime. Pentru aceasta, împarte numărul existent de cazuri legitime la procentul dorit de cazuri legitime în setul de date supra-eșantionat.
  • Folosește funcția ovun.sample() pentru supra-eșantionare, utilizând Class ~ . ca formulă.
  • Verifică echilibrul claselor în setul de date supra-eșantionat.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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(___(___))
Editează și rulează codul