虚拟变量陷阱
"虚拟变量陷阱"指的是不同的虚拟变量传达了相同的信息。例如,如果某位员工来自会计部门(即 accounting 列的值为 1),那么您就可以确定他/她不属于其他任何部门(其他列的值都为 0)。
因此,仅通过查看其他所有部门的列,您也能推断出他/她所属的部门。
基于这个原因,当创建了 \(n\) 个虚拟变量(在本题中为 10 个)时,只需要 \(n\) - 1(在本题中为 9 个)就足够了,第 \(n\) 个列所包含的信息已经被包含在其他列中。
因此,您将删除旧的部门列,另外再删除一个部门的虚拟变量以避免虚拟变量陷阱,然后再将这两个 DataFrame 合并。
本练习是课程的一部分
HR Analytics:用 Python 预测员工流失
练习说明
- 使用
.drop()删除accounting列,以避免 "dummy trap"。 - 使用
.drop()删除旧的department列,因为已经不再需要它。 - 将新的
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)