ダミートラップ
ダミートラップとは、異なるダミー変数が同じ情報を含んでしまう状況を指します。今回の例では、たとえば従業員が経理部(accounting 列の値が 1)であれば、他のどの部門にも属していない(他の列はすべて 0)ことが確実にわかります。
つまり、他のすべての部門ダミーを見れば、その人の所属部門がわかってしまいます。
このため、\(n\) 個のダミー変数を作成した場合(ここでは 10 個)、実際には \(n\) - 1 個(ここでは 9 個)で十分で、\(n\) 個目の列の情報はすでに他の列に含まれています。
したがって、元の部門列を削除し、ダミートラップを避けるために部門ダミーのうち 1 列を落としてから、2 つのDataFrameを結合します。
この演習はコースの一部です
HRアナリティクス:Pythonで従業員離職を予測する
演習の手順
- ダミートラップを避けるため、
accounting列を.drop()で削除します。 - もう不要な古い
department列を.drop()で削除します。 - 新しい
departmentsDataFrame を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)