Unikanie wielokoliniowości
Wróćmy do zbioru danych salesData, który jest już wczytany w środowisku. Dodatkowo załadowana jest biblioteka rms.
Szacujmy wielokrotną regresję liniową! Chcemy oczywiście wykorzystać wszystkie zmienne dostępne w zbiorze danych.
To ćwiczenie jest częścią kursu
Uczenie maszynowe w analizie marketingowej w R
Instrukcje do ćwiczenia
- Zbuduj pełny model o nazwie
salesModel1, używając wszystkich zmiennych z wyjątkiemid, aby wyjaśnić sprzedaż w bieżącym miesiącu. W tym celu uzupełnij poniższy wzorzec odpowiednimi nazwami zmiennych:response ~ . - excluded_variable. Można to odczytać jako: „responsemodelowane przez wszystkie zmienne z wyjątkiemexcluded_variable." - Oszacuj współczynniki inflacji wariancji za pomocą funkcji
vif()z bibliotekirms. - Oprócz wykluczenia zmiennej
id, usuń także zmiennepreferredBrandinBrands, aby uniknąć wielokoliniowości. Zrób to, poprzedzając każdą z nich znakiem-. Zapisz model w obiekcie o nazwiesalesModel2. - Ponownie oszacuj współczynniki inflacji wariancji dla tego modelu. Czy teraz wyniki są do przyjęcia?
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Estimating the full model
salesModel1 <- lm(salesThisMon ~ . - ___,
data = salesData)
# Checking variance inflation factors
vif(___)
# Estimating new model by removing information on brand
salesModel2 <- lm(salesThisMon ~ . - ___,
data = ___)
# Checking variance inflation factors
___