缺失值的前期处理

建立模型的时候,我们对于缺失值太大的特征需要删除,否则还可以对我们造成噪音数据。
对于缺失值的处理,一般来说先判定缺失的数据是否有意义。
从确实信息可以发现,本次数据集缺失值较多的属性对我们模型预测意义不大。
统计每列属性缺失值的数量,删除缺失值过高的比例的函数。
为此本人写了函数如下:

def null_ratio(data, ratiolimit = 0.4):
    #删除缺失值过高的比例的函数
    df_null = data.isnull().sum(axis=0).sort_values(ascending=False)/float(len(data))
    null_ratio = pd.DataFrame(df_null)
    null_ratio = null_ratio.reset_index() #重置索引
    null_ratio = null_ratio.rename(columns = {'index':'Col', 0:'value_retio'}, copy = False)    
    df_nullre = null_ratio[null_ratio.value_retio < ratiolimit] #删掉缺失值比例>0.4的特征   
    refesh_data = data[list(df_nullre['Col'])] 
    return refesh_data

调用函数:

df1 = null_ratio(df)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值