python - 将 Pandas 'categorical' dtype 与 sklearn 一起使用

标签 python pandas scikit-learn categorical-data

sklearn 是否支持直接在拟合模型中使用 Panda 的 Categorical 数据类型?据我所知,sklearn 不支持这种数据类型,这是不幸的,因为分类数据类型既编码分类数据又包含数据的映射方案。此外,分类编码纯粹是一个数据处理/处理问题,因此由 Pandas 处理似乎更自然。

注意

我知道有几种方法可以在 Pandas 和 sklearn 中对分类变量进行编码——这不是我要问的。

最佳答案

来自 issue-tracker 的交叉发布:

我认为这些至少是两个独立的问题: 1. sklearn 可以/将支持以分类特征作为输入的 pandas 数据帧 2. sklearn 可以/将支持通过 pandas 分类数据类型对分类变量进行操作。

  1. 或多或少会将所有分类变量转换为单热编码特征,也称为虚拟列。这对用户来说真的很容易做到。我们可以在 scikit-learn 中“在后台”执行此操作,但这会使代码复杂化,而且我看不出有什么好处。

  2. 基本不可能。有一个分类数据类型对树来说很好,但我认为 pandas 没有稳定的 c 级接口(interface),所以我们不能真正进入它。即使有,它仍然需要大量重写树代码。我认为这对非树估计器没有帮助。

关于python - 将 Pandas 'categorical' dtype 与 sklearn 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30851944/

相关文章:

python-3.x - 如何在 Python 中使用 Keras 使用 scikit-learn 评估指标函数?

python - 学习曲线

python - 具有多项式内核的 sklearn 和 SVM

python - 只有在发生异常时才重新引发异常的更好语法?

python - 用重复值填充 Panda 数据框中的空白

python-2.7 - 使用具有多索引的数据框创建条形图

python - 当列未对齐时连接多个 Pandas 数据框

python - 天体单位等效 - 干涉测量基线

python - 使用 findall 、 Lxml 迭代 Xml

java - 如何在Java中导入使用其他类的抽象方法的Python子类?