python - OneHotEncoding 问题与测试集上看不见的数据
问题描述
我有数字和分类变量的数据。我已将数据拆分为训练和测试。我想在插补后进行一次热编码。测试集上有看不见的数据。
我知道handle_unknown='ignore'
解决了这个问题。但是,我还想删除一列 ( drop='first'
) 以避免多重共线性。OnehotEncoding 不能同时接受这两个。
有没有办法处理看不见的数据并避免多重共线性?
注意:我使用的是 ColumnTransformer。
解决方案
您最好使用数组切片并设计一个自定义转换器,以便您仍然可以在您的ColumnTransformer
. 在这里,您将找到一个如何创建自定义转换器的示例。
推荐阅读
- javascript - 如何在 1 个函数调用中为进度条返回两个百分比值?
- python - 在 python CheckListCtrl 上加载具有透明度的图像
- voip - 在 kamailio 中使用 TSILO 模块进行并行分叉
- r - 专门用小时/分钟/秒过滤 - R
- swift - Swift 中的 Firebase:密码重置电子邮件尝试未发送给用户
- java - Java - Cucumber - 宁静报告 - 忽略测试
- c# - itextsharp : 如何使用 ColorSpaceStroke 和 ColorSpaceFill 找到填充和描边颜色?
- flutter - 容器内可移动和可缩放的网格视图
- sqlite - 将 BLOB 从 CSV 导入 SQLite 表
- r - 在 sqldf::read.csv.sql() 之后关闭未使用的连接