使用 sklearn 同时使用数字和分类变量来拟合决策树
Posted
技术标签:
【中文标题】使用 sklearn 同时使用数字和分类变量来拟合决策树【英文标题】:Using both numeric and categorical variables to fit a decision tree using sklearn 【发布时间】:2018-03-14 23:16:02 【问题描述】:在 sklearn 中对分类变量使用 onehotencoding 时,如何使用稀疏矩阵生成以及其他数值变量来拟合决策树? 如果我使用 OneHotEncoding 将分类变量转换为稀疏矩阵,那么如何将这个稀疏矩阵与原始数据集中的数值变量结合起来?
【问题讨论】:
【参考方案1】:任意使用:
OneHotEncoder 带有参数categorical_features
索引您的功能以进行编码(自动组合您的所有功能)
如果你没有改变sparse=True
,结果默认是稀疏的(使用transform
)
或者:仅在变量子集上使用 OneHotEncoder 时,将这些值叠加到原始值上:
scipy.sparse.hstack((onehot, original))
onehot
的形状为 (n_samples, ?
(取决于您的功能),original
的形状为 (n_samples, ?
【讨论】:
以上是关于使用 sklearn 同时使用数字和分类变量来拟合决策树的主要内容,如果未能解决你的问题,请参考以下文章
在 sklearn 中使用 DictVectorizer 后如何获得分类特征的重要性