gpt4 book ai didi

python - 预处理具有分类和连续特征的大型数据文件

转载 作者:太空宇宙 更新时间:2023-11-04 05:52:17 24 4
gpt4 key购买 nike

首先感谢您阅读我的文章,如果您能提供任何线索来帮助我解决此问题,将不胜感激。

由于我是 Scikit-learn 的新手,请不要犹豫提供任何可以帮助我改进流程并使其更加专业的建议。

我的目标是对两类数据进行分类。我想找到一个能给我最精确结果的解决方案。目前还在寻找最合适的算法和数据预处理。

在我的数据中,我有 24 个值:13 个是标称值,6 个是二值化的,其他是连续的。这是一行的例子

"RENAULT";"CLIO III";"CLIO III (2005-2010)";"Diesel";2010;"HOM";"_AAA";"_BBB";"_CC";0;668.77;3;"Fevrier";"_DDD";0;0;0;1;0;0;0;0;0;0;247.97

我有大约 900,000 行用于学习,我进行了超过 100,000 行的测试

因为我想比较几种算法实现,所以我想对所有标称值进行编码,以便它可以用于多个分类器。

我尝试了几种方法:

  1. LabelEncoder:这非常好,但它为我提供了分类器会错误解释的有序值。
  2. OneHotEncoder:如果我理解得很好,它非常适合我的需求,因为我可以选择要二值化的列。但是由于我有很多标称值,所以它总是出现 MemoryError。此外,它的输入必须是数字,因此必须先对所有内容进行 LabelEncode。
  3. StandardScaler:这很有用,但不是我需要的。我决定整合它以扩展我的持续值(value)。
  4. FeatureHasher:起初我不明白它的作用。然后,我看到它主要用于文本分析。我试着用它来解决我的问题。我通过创建一个包含转换结果的新数组来作弊。我认为它不是为那样工作而构建的,甚至不符合逻辑。
  5. DictVectorizer :可能很有用,但看起来像 OneHotEncoder 并在内存中放入更多数据。
  6. partial_fit:此方法仅由 5 个分类器给出。我希望至少能够使用 Perceptron、KNearest 和 RandomForest 来做到这一点,所以它不符合我的需求

我查看了文档并在页面 Preprocessing 上找到了这些信息和 Feature Extraction .

我希望有一种方法可以对所有标称值进行编码,这样它们就不会被视为有序的。该方案适用于类别多、资源薄弱的大型数据集。

有什么我没有探索过的方法可以满足我的需求吗?

感谢您提供任何线索和建议。

最佳答案

要转换无序的分类特征你可以试试pandas中的get_dummies,更多细节可以引用它的documentation .另一种方法是使用catboost,它可以直接处理分类特征,而无需将它们转换为数值类型。

关于python - 预处理具有分类和连续特征的大型数据文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29620996/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com