我知道 scikit-learn 中的计算是基于 NumPy 的,所以一切都是矩阵或数组。
这个包如何处理混合数据(数值和标称值)?
例如,产品可能具有属性“颜色”和“价格”,其中颜色是标称的,价格是数字的。我注意到有一个名为“DictVectorizer”的模型来计算名义数据。例如,两种产品是:
products = [{'color':'black','price':10}, {'color':'green','price':5}]
'DictVectorizer' 的结果可能是:
[[1,0,10],
[0,1,5]]
如果属性“颜色”有很多不同的值,则矩阵将非常稀疏。而长特征会降低一些算法的性能,比如决策树。
有没有什么方法可以使用标称值而不需要创建虚拟代码?