美文网首页
2022-06-08-特征处理

2022-06-08-特征处理

作者: 破阵子沙场秋点兵 | 来源:发表于2022-06-08 11:20 被阅读0次

删除异常值

def outliers_proc(data, col_name, scale=3):
    """
    用于清洗异常值,默认用 box_plot(scale=3)进行清洗
    :param data: 接收 pandas 数据格式
    :param col_name: pandas 列名
    :param scale: 尺度
    :return:
    """

    def box_plot_outliers(data_ser, box_scale):
        """
        利用箱线图去除异常值
        :param data_ser: 接收 pandas.Series 数据格式
        :param box_scale: 箱线图尺度,
        :return:
        """
        iqr = box_scale * (data_ser.quantile(0.75) - data_ser.quantile(0.25))
        val_low = data_ser.quantile(0.25) - iqr
        val_up = data_ser.quantile(0.75) + iqr
        rule_low = (data_ser < val_low)
        rule_up = (data_ser > val_up)
        return (rule_low, rule_up), (val_low, val_up)

    data_n = data.copy()
    data_series = data_n[col_name]
    rule, value = box_plot_outliers(data_series, box_scale=scale)
    index = np.arange(data_series.shape[0])[rule[0] | rule[1]]
    print("Delete number is: {}".format(len(index)))
    data_n = data_n.drop(index)
    data_n.reset_index(drop=True, inplace=True)
    print("Now column number is: {}".format(data_n.shape[0]))
    index_low = np.arange(data_series.shape[0])[rule[0]]
    outliers = data_series.iloc[index_low]
    print("Description of data less than the lower bound is:")
    print(pd.Series(outliers).describe())
    index_up = np.arange(data_series.shape[0])[rule[1]]
    outliers = data_series.iloc[index_up]
    print("Description of data larger than the upper bound is:")
    print(pd.Series(outliers).describe())
    
    fig, ax = plt.subplots(1, 2, figsize=(10, 7))
    sns.boxplot(y=data[col_name], data=data, palette="Set1", ax=ax[0])
    sns.boxplot(y=data_n[col_name], data=data_n, palette="Set1", ax=ax[1])
    return data_n

相关文章

  • 2022-06-08-特征处理

    删除异常值

  • 特征处理

    特征工程https://www.zhihu.com/question/29316149/answer/110159...

  • 特征工程

    问题 特征归一化 为什么要进行特征归一化? 方法? 使用场景? 离散型特征处理 为什么要处理? 方法? 特征组合 ...

  • 特征工程-特征处理小结

    特征处理包括:数据清洗和特征预处理。 一、数据清洗: 1.数据样本抽样 ①样本要具备代表性 ②样本比例要平衡以及样...

  • 特征工程:特征预处理

    虽然现在深度学习非常盛行,它可以自动进行特征工程,但是实际工作中往往没有那么多数据量支撑你使用深度学习模型,因此对...

  • 特征工程-特征预处理

    特征工程 -Data PreProcessing(数据预处理)-Feature Extraction(特征提取)-...

  • 特征预处理

    数据比算法重要。数据决定了机器学习的上限,而算法只是去尽可能的逼近这个上限。这里的数据不是指原始数据,而是经过特征...

  • 特征预处理

    前言 特征工程在机器学习中占有相当重要的地位,,那么特征工程是什么呢? 特征工程是利用数据领域的相关知识来创建能够...

  • 特征预处理

    梳理需要哪些数据 评估可用性 (获取难度、准确率、覆盖率) 特征清洗 清洗异常样本 采样,正负样本均衡 采样,样本...

  • 特征相关处理

    美团“猜你喜欢”深度学习排序模型实践

网友评论

      本文标题:2022-06-08-特征处理

      本文链接:https://www.haomeiwen.com/subject/ktlumrtx.html