LoslegenKostenlos loslegen

Zufälliges Over-Sampling

Nur ein sehr kleiner Teil der Überweisungen ist betrügerisch. Du wirst jetzt die Betrugsfälle überstichproben, um die Klassenverteilung auszugleichen. Das Merkmal Class im Datensatz creditcard nimmt den Wert 1 im Falle von Betrug und sonst 0 an.

Du kannst die Konsole verwenden, um die Spalten von creditcard mit str() anzuzeigen, die ersten 6 Zeilen mit head() auszugeben und die Klassenbalance mit table(creditcard$Class) zu prüfen.

Diese Übung ist Teil des Kurses

Fraud Detection in R

Kurs anzeigen

Anleitung zur Übung

  • Lade das Paket ROSE.
  • Lege n_new als benötigte Anzahl an Fällen im überstichprobierten Datensatz fest, sodass der neue Datensatz aus 30 % Betrugsfällen und damit 70 % legitimen Fällen besteht. Teile dazu die bestehende Anzahl der legitimen Fälle durch den gewünschten Anteil legitimer Fälle im überstichprobierten Datensatz.
  • Verwende die Funktion ovun.sample() für Over-Sampling mit der Formel Class ~ ..
  • Prüfe die Klassenbalance des überstichprobierten Datensatzes.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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(___(___))
Code bearbeiten und ausführen