python - 如何在 Pipeline 中使用 LabelEncoder 和随机森林
问题描述
我正在尝试使用Pipeline
from scikit-learn
。目前我正在做以下事情:
- 应用于
LabelEncoder
某些功能 - 构建
RandomForest
回归器
代码是:
x['zipcode'] = labelencoder.fit_transform(x['zipcode'])
rfr = RandomForestRegressor(n_estimators=20, random_state=0)
rfr.fit(x, y)
我如何构建一个Pipeline
以便未来看不见的数据经历相同的转换?
解决方案
您无需将 LabelEncoder 转换放入 sklearnPipeline
指令中。因此,可能的解决方案是调用 LabelEncoder ,例如如下:
import numpy as np
from sklearn.preprocessing import LabelEncoder
lbl = LabelEncoder()
lbl.fit(X)
np.save('lbl_encoder.npy', encoder.classes_)
并在需要时加载
lbl = LabelEncoder
lbl.classes_ = np.load('lbl_encoder.npy')
推荐阅读
- javascript - 如何将两种类型分配给猫鼬模式中的特定键?
- python - 正则表达式在组合时不起作用
- javascript - 加载后 JavaScript 和内容更改 - 从日期开始的倒数计时器
- javascript - 将 .sql 文件转换为 .json 或 javascript 对象或 sequelize 模型文件的最佳方法
- android - Azure DevOps 管道 android 构建设置 sdk 位置
- python - 我有一个包含浮点值列表的 str 变量,我想在 python 中将其转换为类型为 float64 的 numpy 数组
- c++ - 尝试 catch 不起作用,在 game1.exe 中的 0x00476F1E 处引发异常:0xC0000005:访问冲突读取位置 0x00000004
- javascript - 更新的问题:this.props 显示无法读取未定义错误的属性“地图”
- kubernetes - 为什么网络策略入口不适用于我的案例
- flutter - 使用 Flutter Web 和 Firebase 存储播放视频