【问题标题】:Deal with missing categorical data python处理丢失的分类数据python
【发布时间】:2017-09-09 07:07:29
【问题描述】:

我有一个 csv 文件,我正在准备使用不同的机器学习算法对其数据进行训练,因此我用该列的平均值替换了数字缺失数据,但是如何处理缺失的分类数据,我应该替换他们最频繁的元素?以及为什么在 python 中使用 pandas 最简单的方法。

代码:

dataset = pd.read_csv('doc.csv')
X = dataset.iloc[:, [2, 4, 5, 6, 7, 9,10 ,11]].values
y = dataset.iloc[:, -1].values

第 2 行包含分类数据。

第一行值:

[3, 'S', 22.0, 1, 0, 7.25, 107722, 2]

【问题讨论】:

    标签: python pandas machine-learning


    【解决方案1】:

    关于您问题的建模部分,您最好在CrossValidated 上提问。 如果缺少数据的记录太多,您可以完全从考虑中删除该列。 this StackOverflow post 上还有其他一些很好的建议,包括 sci-kit learn 的 Imputer() 方法,或者只是让模型处理缺失的数据。

    关于替换列请查看DataFrame.replace() 方法

    DataFrame.replace(
            to_replace=None,
            value=None,
            inplace=False,
            limit=None,
            regex=False, 
            method='pad',
            axis=None)
    

    这是您的数据集的一个示例用法,假设缺失的列值被称为“N”并且您将它们替换为其他类别“S”(您使用DataFrame.mode() 方法发现):@987654329 @。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-03
      • 2022-06-10
      • 2015-05-31
      • 1970-01-01
      • 2021-04-27
      • 2015-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多