LoslegenKostenlos loslegen

VIF berechnen

Wie du im Video gelernt hast, ist einer der am häufigsten verwendeten Diagnosetests für Multikollinearität der Variance Inflation Factor (VIF), der für jede erklärende Variable berechnet wird.

Erinnere dich an die Faustregel aus dem Video: Der Schwellenwert liegt bei einem VIF von 2,5. Das bedeutet, wenn der VIF über 2,5 liegt, solltest du davon ausgehen, dass Multikollinearität dein angepasstes Modell beeinflusst.

Das zuvor angepasste model und der crab-Datensatz sind im Workspace vorab geladen.

Diese Übung ist Teil des Kurses

Generalisierte lineare Modelle in Python

Kurs anzeigen

Anleitung zur Übung

  • Importiere aus statsmodels variance_inflation_factor.
  • Wähle aus dem Datensatz crab weight, width und color und speichere es als X. Füge X eine Intercept-Spalte mit Einsen hinzu.
  • Erstelle mit der pandas-Funktion DataFrame() einen leeren vif-DataFrame und füge die Spaltennamen von X in der Spalte Variables hinzu.
  • Berechne für jede Variable den VIF mit der Funktion variance_inflation_factor() und speichere ihn im vif-DataFrame in der Spalte VIF.

Interaktive Übung

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

# Import functions
from statsmodels.stats.outliers_influence import ____

# Get variables for which to compute VIF and add intercept term
X = ____[[____, ____, ____]]
X[____] = 1

# Compute and view VIF
vif = pd.____
vif["variables"] = X.____
vif["VIF"] = [____(X.values, i) for i in range(X.shape[1])]

# View results using print
____(____)
Code bearbeiten und ausführen