Willekeurig over-samplen
Slechts een heel klein deel van de overboekingen is frauduleus. Je gaat nu de fraudegevallen over-samplen om zo de klassenverdeling in balans te brengen. De feature Class in gegevensset creditcard heeft waarde 1 bij fraude en 0 anders.
Je kunt de console gebruiken om de kolommen van 'creditcard' te tonen met str(), de eerste 6 rijen af te drukken met head() en de Class-balans te controleren met table(creditcard$Class).
Deze oefening maakt deel uit van de cursus
Fraudedetectie in R
Oefeninstructies
- Laad het pakket
ROSE. - Stel
n_newin als het vereiste aantal gevallen in de over-samplede gegevensset zodat de nieuwe gegevensset zal bestaan uit 30% fraudegevallen en dus 70% legitieme gevallen. Hiervoor deel je het bestaande aantal legitieme gevallen door het gewenste percentage legitieme gevallen in de over-samplede gegevensset. - Gebruik de functie
ovun.sample()voor over-samplen metClass ~ .als formula. - Controleer de klassenbalans van de over-samplede gegevensset.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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(___(___))