Дискретизація всіх змінних
Замість того щоб дискретизувати неперервні змінні по одній, зручніше зробити це автоматично. Щоб отримати список усіх стовпців у Python, скористайтеся
variables = basetable.columns
Дискретизації підлягають лише неперервні змінні. Ви можете перевірити, чи потрібно дискретизувати змінну, оцінивши, чи має вона більше за наперед визначену кількість різних значень.
Ця вправа є частиною курсу
Вступ до прогностичної аналітики в Python
Інструкції до вправи
- Створіть список
variables, що містить усі назви стовпців базової таблиці. - Створіть цикл, який перевіряє всі змінні у списку
variables. - Доповніть оператор
ifтак, щоб дискретизувалися лише змінні з більш ніж 5 різними значеннями. - Розбийте неперервні змінні на 10 інтервалів за допомогою методу
qcut.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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)