数据质量分析:
缺失值、异常值、一致性。
缺失值:
原因:1.信息暂时无法获取,或获取的代价太大。
2.信息遗漏
3.属性值不存在
影响:1.数据挖掘建模将丢失大量有用的信息。
2.数据挖掘模型表现出大量的不确定性,模型蕴含的规律难以把握。
3.含有空值的数据会是建模过程陷入混乱,导致不可靠的输出。
分析:统计分析
对缺失值的处理:删除、插补和不处理3种
异常值:
异常值是指样本中的个别值,其数值明显偏离其他观测值。异常值也被称为离群值,异常值分析也称为离群点分析。
分析:
1.简单统计量分析
2.3sigma原则
基于正态分布,3sigma准则认为超过3sigma的数据为异常点。
def three_sigma(s):
mu, std = np.mean(s), np.std(s)
lower, upper = mu-3*std, mu+3*std
return lower, upper
3.箱型图分析
箱线图时基于四分位距(IQR)找异常点的。
箱型图提供了一个识别异常值的标准:异常值通常被定义为小Q1-1.5IQR或大于Q3+1.5IQR的值。Q1被称为下四分位数,表示全部观察值中有四分之一的数据取值比他小;Q3称为上四分位数,表示全部观察值中有四分之一的数据取值比他大;IQR称为四分位数间距,是上四分位数Q3与下四分位数Q1之差,期间包含了全部观察之中的一半。
def boxplot(s):
q1, q3 = s.quantile(.25), s.quantile(.75)
iqr = q3 - q1
lower, upper = q1 - 1.5*iqr, q3 + 1.5*iqr
return lower, upper
一致性:
数据不一致性是指数据的矛盾性、不相容性。不一致数据的产生主要发生在数据集成的过程中,可能是由于被挖掘数据来自与不同的数据源、对于重复存放的数据未能进行一致性更新造成的。