打开pycharm开发工具,在操作窗口输入命令:
importpandasaspd#导入pandas库
输入数据集。
data=pd.DataFrame({'name':['A','B','C','D','E','F','G'],'cost':',[2,127,4,6,3,13,14];sales':(13、18、32、54、23、33、44) print(data)
通过z-score法判断异常值,即对原始值X进行正态标准化:(X-mean(X))/std(X),样本值与中心的偏差程度根据计算结果来判断。
df1=data.copy()#为不影响原始数据集,复制数据集datata print(df1)
平均值和标准差按列计算。
df1['cost']=(df1['cost']-df1['cost'].mean()/df1[#39;cost'].std()#标准化cost_z列
标准化sales列。
df1['sales']=(df1['sales']-df1['sales'].mean()/df1[#39;sales'].std()#标准化cost_z列 df1['sales']
查看标准化后的数据集。
print(df1)
标准化后的绝对值越大,数据就越有可能出现异常,是否根据设定的阈值进行异常判断。
假设cost列阈值为2,通过以下方法找到异常值。
df1['cost'].abs()>2#判断数据是否异常 data[df1['cost'].abs()>2]#取出原始数据集中的异常点
python学习网,大量免费python视频教程,欢迎在线学习!