Ловушка фиктивных переменных
Ловушка фиктивных переменных — это ситуация, когда разные фиктивные переменные несут одинаковую информацию. Например, если сотрудник работает в бухгалтерии (то есть значение в столбце accounting равно 1), то очевидно, что он не относится ни к одному другому отделу (все остальные значения равны 0).
Таким образом, узнать отдел сотрудника можно и по остальным столбцам.
Именно поэтому при создании \(n\) фиктивных переменных (в нашем случае — 10) достаточно оставить лишь \(n\) - 1 (то есть 9): информация \(n\)-го столбца уже содержится в остальных.
Итак, вы удалите исходный столбец с отделами, уберёте одну из фиктивных переменных, чтобы избежать ловушки, а затем объедините два DataFrame.
Это упражнение является частью курса
HR-аналитика: прогнозирование текучести кадров на Python
Инструкции к упражнению
- Удалите столбец
accountingс помощью.drop(), чтобы избежать ловушки фиктивных переменных. - Удалите старый столбец
departmentс помощью.drop(), так как он больше не нужен. - Присоедините новый DataFrame
departmentsк набору данныхemployee(это уже сделано за вас).
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Drop the "accounting" column to avoid "dummy trap"
departments = departments.____("____", axis=1)
# Drop the old column "department" as you don't need it anymore
data = data.____("____", axis=1)
# Join the new DataFrame "departments" to your employee dataset: done
data = data.join(departments)