Die Mehrheitsgruppe verkleinern
Anstatt die Anzahl der Betrugsfälle im Datensatz zu erhöhen, kannst du zufällig legitime Fälle entfernen, um den Datensatz auszugleichen. Lass uns die Mehrheitsklasse (Class = 0) im creditcard-Datensatz unterstichproben. In der Konsole kannst du table() verwenden, um herauszufinden, wie viele betrügerische und legitime Transaktionen im Datensatz enthalten sind.
Diese Übung ist Teil des Kurses
Fraud Detection in R
Anleitung zur Übung
- Lade die ROSE-Bibliothek.
- Lege
n_newals benötigte Fallzahl im unterstichproben Datensatz so fest, dass der neue Datensatz zu 40 % aus Betrugsfällen besteht. Dafür musst du die Anzahl der Betrugsfälle durch den gewünschten Prozentsatz der Betrugsfälle im unterstichproben Datensatz teilen. - Führe die Unterstichprobe des Datensatzes durch.
- Verwende
table()undprop.table(), um die Klassenbalance des unterstichproben Datensatzes zu prüfen.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Load ROSE
___
# Calculate the required number of cases in the over-sampled dataset
n_new <- ___
# Under-sample
undersampling_result <- ___(formula = ___, data = ___,
___ = ___, ___ = ___, seed = 2018)
# Verify the Class-balance of the under-sampled dataset
undersampled_credit <- undersampling_result$___
___(___(___))