python - 一种热编码相关性和决策树
问题描述
关于准备学习数据,我几乎没有什么问题。当我想使用相关性和分类器决策树时,我对如何将列转换为分类列和二元列感到非常困惑。
例如在 NBA_df 中,将位置列转换为分类列以使用决策树,我可以将其转换为分类列.astype('category').cat.codes
吗?(我知道在篮球运动中,您可以通过 1-5 号来记录位置
。NBA_df
而在 students_df 中,为什么将“性别”、“种族/民族”、“午餐”、“考试准备课程”列转换为新的二进制列.get_dummies
而不是在同一列中进行分类转换更正确?
学生_df
它在相关性和树上是一样的吗?
解决方案
我不确定我完全理解转换为“在同一列中”的分类是什么意思,但我假设您的意思是将位置的分类响应替换为数字 1 到 5 并将这些数字保留在同一列中。
假设这是您的意思,您必须考虑计算机将如何解释输入。小前锋(篮球中的3号位)是控球后卫(1 * 3)的3倍吗?当然不是,但是计算机会这样看。它将确定与目标的不现实关系。出于这个原因,您需要使用二进制指标的单独列,就像.get_dummies
正在做的那样。这样,计算机将不会将位置视为可以操作的数值,而是将位置视为单独的实体。
推荐阅读
- html - 徽标在 Chrome 中在线变形
- sql - 在 HIVE 中分解具有元素位置的结构数组
- ios - SwiftUI:覆盖底部安全区域的工具栏
- filesystems - 如何从 Fedora 实时会话编辑 /etc/fstab?
- python-3.x - 如何使用具有自定义格式的 Apache Beam 以 JSON 格式将 BigQuery 结果写入 GCS?
- python - 在 Discord.py 中找不到我刚刚创建的角色 - 为什么?
- javascript - A: Discord.js v12+ 频道未定义
- amazon-web-services - 从 AWS SES Javascript v3 开发工具包发送电子邮件时,我可以包含显示名称吗?
- java - appscan期间jsp中的Validation.required错误
- node.js - 在带有 WHM 和 cpanel 的 Gen4 VPS Linux 4 CPU 上运行 nodejs