繁体   English   中英

使用scikit-learn对大型数据集进行一键编码

[英]One-hot encoding of large dataset with scikit-learn

我有一个很大的数据集,打算对它进行逻辑回归。 它有很多分类变量,每个都有数千个功能,我打算在其中使用一种热编码。 我将需要小批量处理数据。 我的问题是如何确保一个热编码在第一次运行时就能看到每个分类变量的所有功能?

无法找出分类特征可以取哪些值,这可能意味着您必须完全遍历数据才能获得分类变量的唯一值列表。

之后,它是将您的分类变量以整数值和设定事项n_values=在kwarg OneHotEncoder到对应于不同值中的每个变量可以取的数目的阵列。

您可以读取数据,然后首先获得分类变量的所有唯一值的列表。 然后,可以在唯一值列表中放入一个热编码器对象(例如sklearn.preprocessing.CategoricalEncoder)。

这种方法可以帮助

  • 火车测试框架
  • 或者当您分块读取数据时

我创建了一个python模块,可以自行完成所有这些操作。 您可以在此GitHub存储库中找到它-dummyPy

这方面的简短教程- 如何使用Python对大型数据集的分类变量进行热编码?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM