如何从模型生成中保留 Scikit-learn OneHotEncoding 以用于新数据?
How to retain Scikit-learn OneHotEncoding from model generation to use on new data?
我正在使用 OneHotEncoding
为分类问题生成虚拟变量。当用于训练数据时,我得到大约 300 个虚拟列,这很好。但是,当我输入新数据(行数较少)时,OneHotEncoding
仅生成约 250 个虚拟对象,考虑到较小的数据集,这并不奇怪,但我无法将新数据用于模型,因为特征不一致。
有没有办法保留 OneHotEncoding
架构以用于新的传入数据?
我认为您在训练和测试数据集上都使用了 fit_transform
,这不是正确的方法,因为编码模式必须在两个数据集上保持一致,模型才能理解来自特征的信息.
正确的做法是
fit_transform
训练数据
transform
测试数据
通过这种方式,您将获得一致的列数。
我正在使用 OneHotEncoding
为分类问题生成虚拟变量。当用于训练数据时,我得到大约 300 个虚拟列,这很好。但是,当我输入新数据(行数较少)时,OneHotEncoding
仅生成约 250 个虚拟对象,考虑到较小的数据集,这并不奇怪,但我无法将新数据用于模型,因为特征不一致。
有没有办法保留 OneHotEncoding
架构以用于新的传入数据?
我认为您在训练和测试数据集上都使用了 fit_transform
,这不是正确的方法,因为编码模式必须在两个数据集上保持一致,模型才能理解来自特征的信息.
正确的做法是
fit_transform
训练数据transform
测试数据
通过这种方式,您将获得一致的列数。