zoukankan      html  css  js  c++  java
  • 异常值分析

    异常值分析

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

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

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

     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个,再结合实际的情况,需要讲有些符合条件的点加到其中,然后进行后续处理。

  • 相关阅读:
    jsp session练习简单的登录
    JSP练习:编写登录程序,错误时跳转
    1.JSON抓取文件解析文件
    java ee 在数据库中执行增删改查
    java ee cookie方法键值对输出
    java ee cookie方法包括在cookie输出的中文转换
    java编写在数据库中按条件查询数据
    java 在数据库中添加新信息
    java ee 输出三角形
    java ee 五的阶乘
  • 原文地址:https://www.cnblogs.com/wangmengzhu/p/8177932.html
Copyright © 2011-2022 走看看