头歌平台数据挖掘之数据预处理

本文介绍了在数据预处理中使用中位数填充缺失值的方法,通过离散化将年龄转换为离散区间,以及如何通过最小-最大规范化将数据缩放到0-1范围。此外,还提及了计算皮尔森相关系数以评估变量间的线性关系。

第一关:使用中位数填充中位值

任务描述

本关任务:使用中位数填充缺失值。

相关知识

根据样本之间的相似性填补缺失值是指用这些缺失值最可能的值来填补它们,通常使用能代表变量中心趋势的值进行填补,代表变量中心趋势的指标包括平均值、中位数、众数等,本次任务使用中位数填充缺失值

代码

# -*- coding: utf-8 -*-
def fill_median(data):
    """填充数据中的缺失值
    参数:
        data - pandas.dataframe格式,原始数据

    返回值:
        processed_data - 填充后的数据
    """
    processed_data = data
    #   请在此添加实现代码     #
    #********** Begin *********#
    processed_data = data.copy()  # 复制原始数据,避免原始数据丢失
    processed_data.fillna(processed_data.median(), inplace=True) #中位数填充缺失值

    #********** End ***********#
    return processed_data

解释相关代码:

   fillna函数可以将缺失值填充为指定数值,这里指定的数值是processed_data.median()中位数。

   inplace=True 可以让填充立马生效,也就是直接填充不用再创建新的对象。

第二关:离散化

任务描述

本关任务:将原数据集中的年龄离散化。

按下表标准进行离散化

相关知识

连续属性的离散化就是在数值的取值范围内设定若干点离散的划分点,划分区间,然后用不同的符号去表示落在每个子区间的数据值。

离散化涉及两个任务,确定分类数以及将连续属性值映射到这些分类值。

代码: 

#
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值