Compute VIF
As you learned in the video one of the most widely used diagnostic for multicollinearity is the variance inflation factor or VIF, which is computed for each explanatory variable.
Recall from the video that the rule of thumb threshold is VIF at the level of 2.5, meaning if the VIF is above 2.5 you should consider there is effect of multicollinearity on your fitted model.
The previously fitted model
and crab
dataset are preloaded in the workspace.
Diese Übung ist Teil des Kurses
Generalized Linear Models in Python
Anleitung zur Übung
- From
statsmodels
importvariance_inflation_factor
. - From
crab
dataset chooseweight
,width
andcolor
and save asX
. AddIntercept
column of ones toX
. - Using
pandas
functionDataFrame()
create an emptyvif
dataframe and add column names ofX
in columnVariables
. - For each variable compute VIF using the
variance_inflation_factor()
function and save invif
dataframe withVIF
column name.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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
____(____)