Dyskretyzacja wszystkich zmiennych
Zamiast dyskretyzować zmienne ciągłe jedna po drugiej, wygodniej jest zautomatyzować ten proces. Aby uzyskać listę wszystkich kolumn w Pythonie, możesz użyć:
variables = basetable.columns
Dyskretyzacji powinny podlegać tylko zmienne ciągłe. Możesz to sprawdzić, weryfikując, czy dana zmienna przyjmuje więcej wartości niż ustalony próg.
To ćwiczenie jest częścią kursu
Wprowadzenie do analizy predykcyjnej w Pythonie
Instrukcje do ćwiczenia
- Utwórz listę
variableszawierającą wszystkie nazwy kolumn tabeli bazowej. - Utwórz pętlę, która sprawdza wszystkie zmienne z listy
variables. - Uzupełnij instrukcję
iftak, aby dyskretyzacji podlegały tylko zmienne mające więcej niż 5 różnych wartości. - Pogrupuj zmienne ciągłe w 10 przedziałów przy użyciu metody
qcut.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Print the columns in the original basetable
print(basetable.columns)
# Get all the variable names except "target"
variables = list(____.____)
variables.remove("target")
# Loop through all the variables and discretize in 10 bins if there are more than 5 different values
for variable in ____:
if len(basetable.groupby(____))>____:
new_variable = "disc_" + variable
basetable[new_variable] = pd.qcut(basetable[____], ____)
# Print the columns in the new basetable
print(basetable.columns)