在数据挖掘中,前期数据预处理,会涉及到很多缺失值的处理问题。
现以python代码实现为例,看如何具体处理的。
所需python包
from pandas import Series, DataFrame
import pandas as pd
寻找缺失值
def FindFeactureNAorValue(data, feacture_cols, axis=0, value = 'NA', prob_dropFct = 0.95):
'''
函数说明:寻找每一个特征有多少value值,默认为:缺失值,及所占比率
输入:data——整个数据集,包括Index,target
feacture_cols——特征名
prob_dropFct——大于这个比例,就丢掉该特征
输出:numValue——DataFrame index='feacture1', columns=['numnumValue', 'probnumValue']
dropFeacture_cols——要丢掉的特征列名
'''
#计算x中value值个数
def num_Value(x, value = 'NA'):
if value == 'NA':
return sum(x.isnull()) #寻找缺失值个数
else:
return sum(x == value)