一、异常处理的必要性
某些能够忽略异常值的算法,可以不做异常处理,如决策树模型
某些根据变量权重或是距离构建模型的算法做异常处理具有重要意义
二、单变量异常常用检测方法
单变量异常检测只针对单一特征,找出该特征下的样本异常值
(1)根据常识或业务知识
根据某些变量的相关常识或是业务知识,为变量设定范围值,视超出限定范围的为异常值
举例:某些限定正数变量,出现负值即为异常值。
特点:较为灵活,识别准确度高,需要一定的业务知识
(2)均值/标准差法
假设分布服从正态/高斯分布,根据3σ原则可进行异常值筛选,判定落在μ-3σ与μ+3σ之外的值为异常值
特点:适用于服从正态/高斯分布的变量,对极值本身敏感
代码:
'''
data:你的DataFram数据集
col_name:列名
threshold:指定的标准差倍数
若为异常值则置为空值
'''
threshold = 3
Upper_fence = data[col_name].mean() + threshold * data[col].std()
Lower_fence = data[col_name].mean() - threshold * data[col].