数据可视化---离群值展示

内容导航

类别 内容导航
机器学习 机器学习算法应用场景与评价指标
机器学习算法---分类
机器学习算法---回归
机器学习算法---聚类
机器学习算法---异常检测
机器学习算法---时间序列
数据可视化 数据可视化---折线图
数据可视化---箱线图
数据可视化---柱状图
数据可视化---饼图、环形图、雷达图
统计学检验 箱线图筛选异常值
3 Sigma原则筛选离群值
Python统计学检验
大数据 PySpark大数据处理详细教程
使用教程 CentOS服务器搭建Miniconda环境
Linux服务器配置免密SSH
大数据集群缓存清理
面试题整理 面试题---机器学习算法
面试题---推荐系统

python 复制代码
"""
传入一个list,以及几倍的sigma参数threshold,可以将数据中的正常值及离群值用不同颜色展示出来
"""
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

def Outlier_visualization_line(data,threshold):
    plt.style.use('ggplot')
    data = pd.Series(data)
    mean = data.mean()
    std  = data.std()

    #筛选出离群值
    left  = mean - threshold * std
    right = mean + threshold * std
    error = data[(data<left)|(data>right)]
    data_c = data[(data>=left)&(data<=right)]
    # #不同着色,正常绿色,离群值红色
    # sp = np.where(data.isin(data_c),'g','r') 
    # 可视化
    fig = plt.figure(figsize=(12,8))
    plt.plot(data.index,data.values,'bo--',alpha=0.4)
    plt.scatter(error.index,error.values,c='r',s=60)
    plt.title('Outlier Visualization',size=20)
    plt.text(len(data)*0.4,data.values.max()+data.values.max()*0.01,
             r'$\mu={},\ \sigma={}$'.format(round(mean,2),round(std,2)),fontsize=14,bbox=dict(facecolor='red', alpha=0.2))
    # 添加水平辅助线plt.axhline,添加垂直辅助线plt.axvline(轴位置,线形,标签))
    plt.axhline(left,linestyle = '--',label="{} sigma low".format(threshold))
    plt.axhline(right,linestyle = '--',label="{} sigma up".format(threshold))
    plt.xlabel('Index',size=18)
    plt.ylabel('Value',size=18)
    plt.grid(True)
    plt.legend(loc='best')
    plt.show()
    fig.savefig('Outlier_visualization_line.png',dpi=600)

data = np.random.randn(100)*100
Outlier_visualization_line(data,threshold=1.5)
python 复制代码
"""
传入一个list,以及几倍的sigma参数threshold,可以将数据中的正常值及离群值用不同颜色展示出来
"""
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

def Outlier_visualization_scatter(data,threshold):
    plt.style.use('ggplot')
    data = pd.Series(data)
    mean = data.mean()
    std  = data.std()

    #筛选出离群值
    left  = mean - threshold * std
    right = mean + threshold * std
    error = data[(data<left)|(data>right)]
    data_c = data[(data>=left)&(data<=right)]
    #不同着色,正常绿色,离群值红色
    sp = np.where(data.isin(data_c),'g','r') 
    # 可视化
    fig = plt.figure(figsize=(12,8))
    plt.scatter(data.index,data.values,marker='o',c=sp)
    plt.title('Outlier Visualization',size=20)
    plt.text(len(data)*0.4,data.values.max(),
             r'$\mu={},\ \sigma={}$'.format(round(mean,2),round(std,2)),fontsize=14,bbox=dict(facecolor='red', alpha=0.2))
    plt.xlabel('Index',size=18)
    plt.ylabel('Value',size=18)
    plt.grid(True)
    plt.show()
    fig.savefig('Outlier_visualization_scatter.png',dpi=600)

data = np.random.randn(10000)*100
Outlier_visualization_scatter(data,threshold=2.7)

友情提示 :如果你觉得这个博客对你有帮助,请点赞、评论和分享吧!如果你有任何问题或建议,也欢迎在评论区留言哦!!!

相关推荐
小何code9 小时前
人工智能【第7篇】数据可视化:Matplotlib与Seaborn实战(万字长文+完整代码)
人工智能·机器学习·信息可视化·matplotlib
泽_浪里白条1 天前
我在 Superset 6.x 做自定义图表 + Embedded SDK 集成的实战复盘(附踩坑清单)
前端·数据可视化
山海鲸实战案例分享1 天前
【数字孪生实战案例】如何配置下拉菜单,实现与电子地图飞线的数据联动查询?~山海鲸可视化
数字孪生·数据可视化·零代码·实战案例·山海鲸可视化·电子地图·数据联动
无心使然1 天前
Openlayers调用ArcGis要素服务之一 ——要素查询 (/query)
前端·javascript·数据可视化
无心使然云中漫步1 天前
Openlayers调用ArcGis地图服务之五 —— 要素识别(/identify)
前端·arcgis·vue·数据可视化
无心使然2 天前
Openlayers调用ArcGis影像服务之一动态地图、地图切片(/exportImage)
前端·javascript·数据可视化
SL-staff2 天前
中小企业 BI 选型:帆软、Power BI、JVS-BI 性价比与架构对比
数据分析·数据可视化·powerbi·帆软·bi工具·部署架构·jvs-bi
transformer_WSZ2 天前
excel两列数据绘制折线图
excel·折线图
山海鲸实战案例分享2 天前
【数字孪生实战案例】怎样开启三维场景,实现场景内所有模型自动转动?~山海鲸可视化
数字孪生·数据可视化·零代码·实战案例·山海鲸可视化·三维场景·自动旋转
国产化创客3 天前
龙芯 2K0300-- 实现工业网关监控仪表盘项目
嵌入式硬件·物联网·数据可视化