Python 一个热编码两个分类变量,每个变量在sklearn中有3个级别

Python 一个热编码两个分类变量,每个变量在sklearn中有3个级别,python,pandas,statistics,scikit-learn,dummy-variable,Python,Pandas,Statistics,Scikit Learn,Dummy Variable,我必须将两个分类变量A(levels=A1,A2,A3)和B(levels=B1,B2,B3)编码为虚拟变量。我的理解是sklearn中的onehotcoder会对我的变量进行编码,如A1+A2+A3+B1+B2+B3=2(也称为一对一方案)。这种方法是否会导致模型拟合过程中出现共线等问题 为什么sklearn不以与pandas.get\u dummies相同的方式提供K-1编码选项?或者,我遗漏了什么吗?只是想知道为什么你不想使用熊猫。获取虚拟对象(数据,列=cat\u cols,drop\u

我必须将两个分类变量
A
(levels=
A1
A2
A3
)和
B
(levels=
B1
B2
B3
)编码为虚拟变量。我的理解是
sklearn
中的
onehotcoder
会对我的变量进行编码,如
A1
+
A2
+
A3
+
B1
+
B2
+
B3
=2(也称为一对一方案)。这种方法是否会导致模型拟合过程中出现共线等问题


为什么
sklearn
不以与
pandas.get\u dummies
相同的方式提供K-1编码选项?或者,我遗漏了什么吗?

只是想知道为什么你不想使用熊猫。获取虚拟对象(数据,列=cat\u cols,drop\u first=True)?这是因为我需要将整个预处理集成到
sklearn
的API中,你知道,
Pipeline
FeatureUnion
之类的东西。您可以随时扩展
OneHotEncoder
,对返回的数据进行更改。scikit管道和FeatureUnion将支持此自定义类。只是想知道为什么不想使用
熊猫。获取虚拟对象(data,columns=cat\u cols,drop\u first=True)
?这是因为我需要在
sklearn
的API中集成整个预处理,你知道,
Pipeline
FeatureUnion
之类的东西。您可以随时扩展
OneHotEncoder
,对返回的数据进行更改。scikit管道和FeatureUnion将支持此自定义类。