• 异常值分析


    异常值分析

      异常值分析是检验数据是否有录入错误以及含有不合常理的数据。忽视异常值的存在是十分危险的,不加剔除地把异常值包括进数据的计算分析过程中,对结果会产生不良影响,忽视异常值的出现,分析其产生的原因,常常成为发现问题进而改进决策的契机。

       下面分析餐饮数据的异常值

      餐饮数据主要包括日期值和销售值,其中通过分析,发现销售值中有缺失值,下面通过箱线图来展示缺失值。

     1 #-*- coding: utf-8 -*-
     2 import pandas as pd
     3 
     4 data=pd.read_csv('catering_sale.csv')
     5 print(data)
     6 import matplotlib.pyplot as plt #导入图像库
     7 plt.rcParams['font.sans-serif'] = ['SimHei'] #用来正常显示中文标签
     8 plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号
     9 
    10 plt.figure() #建立图像
    11 p = data.boxplot(return_type='dict') #画箱线图,直接使用DataFrame的方法
    12 x = p['fliers'][0].get_xdata() # 'flies'即为异常值的标签
    13 y = p['fliers'][0].get_ydata()
    14 y.sort() #从小到大排序,该方法直接改变原对象
    15 
    16 #用annotate添加注释
    17 #其中有些相近的点,注解会出现重叠,难以看清,需要一些技巧来控制。
    18 #以下参数都是经过调试的,需要具体问题具体调试。
    19 for i in range(len(x)): 
    20   if i>0:
    21     plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i]+0.05 -0.8/(y[i]-y[i-1]),y[i]))
    22   else:
    23     plt.annotate(y[i], xy = (x[i],y[i]), xytext=(x[i]+0.08,y[i]))
    24 
    25 plt.show() #展示箱线图

      通过箱线图的分析,可以判断在箱线图外的点有7个,再结合实际的情况,需要讲有些符合条件的点加到其中,然后进行后续处理。

  • 相关阅读:
    【转】ibatis 中使用select top #pagesize# * from tablename
    华硕X43S关闭触控板
    abap程序的调试方法
    sap销售业务流程
    C#实现MD5加密
    5/11 PLS00103: 出现符号 "TABLE"在需要下列之一时: := . ( @ % ; 符号 ":=在 "TABLE" 继续之前已插入。
    abap处理字符串
    abap中的数据类型和数据对象
    oracle中清空表数据的两种方法
    DDL和DML
  • 原文地址:https://www.cnblogs.com/wangmengzhu/p/8177932.html
Copyright © 2020-2023  润新知