LoslegenKostenlos loslegen

Median-Imputation anwenden

In diesem Kapitel arbeitest du mit einer Variante des Wisconsin-Breast-Cancer-Datensatzes. Dieser Datensatz stellt ein klassisches binäres Klassifikationsproblem dar: 50 % der Proben sind gutartig, 50 % bösartig, und die Aufgabe ist, beides auseinanderzuhalten.

Der Datensatz ist interessant, weil viele Prädiktoren fehlende Werte enthalten und die meisten Zeilen mindestens einen fehlenden Wert haben. Das ist eine Herausforderung fürs Modellieren, denn die meisten Machine-Learning-Algorithmen können fehlende Werte nicht ohne Weiteres verarbeiten. Dein erster Impuls könnte zum Beispiel sein, ein logistisches Regressionsmodell auf die Daten zu fitten. Bevor du das tust, brauchst du jedoch eine Strategie für den Umgang mit den NAs.

Zum Glück hat die Funktion train() in caret ein Argument namens preProcess, mit dem du festlegen kannst, dass zur Auffüllung fehlender Werte die Median-Imputation verwendet wird. In früheren Kapiteln hast du mit train() Modelle mithilfe von Formeln wie y ~ . erstellt. Eine Alternative ist, die Argumente x und y an train() zu übergeben, wobei x ein Objekt mit Beobachtungen in den Zeilen und Merkmalen in den Spalten ist und y ein numerischer oder Faktor-Vektor mit den Zielwerten. Anders gesagt: x ist eine Matrix oder ein Data Frame, der den gesamten Datensatz enthält, den du z. B. beim data-Argument eines lm()-Aufrufs verwenden würdest, jedoch ohne die Spalte der Zielvariable; y ist ein Vektor, der nur die Spalte der Zielvariable enthält.

Für diese Übung ist das Argument x für train() als breast_cancer_x und y als breast_cancer_y in deinem Workspace geladen.

Diese Übung ist Teil des Kurses

Maschinelles Lernen mit caret in R

Kurs anzeigen

Anleitung zur Übung

  • Verwende die Funktion train(), um ein glm-Modell namens median_model auf den Breast-Cancer-Datensatz zu fitten. Nutze preProcess = "medianImpute", um die fehlenden Werte zu behandeln.
  • Gib median_model in der Konsole aus.

Interaktive Übung

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

# Apply median imputation: median_model
median_model <- train(
  x = ___, 
  y = ___,
  method = ___,
  trControl = myControl,
  preProcess = ___
)

# Print median_model to console
Code bearbeiten und ausführen