НачатьНачать бесплатно

Дискретизация всех переменных

Вместо того чтобы дискретизировать непрерывные переменные по одной, удобнее сделать это автоматически. Чтобы получить список всех столбцов в 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)
Редактировать и запускать код