1.简介
拉依达准则(Pau’ta Criteron)是先假设一组数据中只含有随机误差,首先按照一定准则计算标准偏差,按照一定概率确定一定区间,认为不在这个区间的为异常值。当数据呈正太分布或者近似正太分布时可以使用
2.数据集示例
3.完整处理代码
import numpy as np
import pandas as pd
#设置需读取文件的路径
datapath = "traning处理前.xlsx"
data = pd.read_excel(datapath)
# 记录方差大于3倍的值
#shape[0]记录行数,shape[1]记录列数
sigmayb = [0]*data.shape[0]
for i in range(1,data.shape[1]):
print("处理第"+str(i)+"行")
# 循环 每一列
lie = data.iloc[:, i].to_numpy()
#print(lie)
mea = np.mean(lie)
s = np.std(lie, ddof=1)
# 计算每一列 均值 mea 标准差 s
print("均值和标准差分别为:"+str(mea)+" "+str(s))
#统计大于三倍方差的行
for t in range(1,data.shape[0]):
if (abs(lie[t]-mea) > 3*s):
print(">3sigma"+" "+str(t)+" "+str(i))
#将异常值置空
data.iloc[t,i]=' '
#将处理后的数据存储到原文件中
data.to_excel(datapath)
4.运行结果