缺失值的前期处理
程序员文章站
2024-03-01 18:19:34
...
建立模型的时候,我们对于缺失值太大的特征需要删除,否则还可以对我们造成噪音数据。
对于缺失值的处理,一般来说先判定缺失的数据是否有意义。
从确实信息可以发现,本次数据集缺失值较多的属性对我们模型预测意义不大。
统计每列属性缺失值的数量,删除缺失值过高的比例的函数。
为此本人写了函数如下:
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)
上一篇: 一个非常简陋的商品购买系统(*^▽^*)
下一篇: [SQL] JDBC