zoukankan      html  css  js  c++  java
  • python数据分析学习笔记(一)

    一、数据预处理

    1、数据质量分析

    赃数据:不符合要求,不能进行直接相应分析的数据

    缺失、异常、不一致、重复含有特殊符号

    这边看一个异常值分析的例子:箱状图分析

    # -*- coding: utf-8 -*-
    """
    Created on Wed Mar 14 17:05:35 2018
    
    @author: lanmeng
    """
    
    import pandas as pd
    catering_sale ='demo/data/catering_sale.xls'#餐饮数据
    data=pd.read_excel(catering_sale,index_col=u'日期')#读取数据,指定日期列为索引列
    print(data.describe())
    import matplotlib.pyplot as plt #导入图像库
    plt.rcParams['font.sans-serif']=['SimHei'] #用来显示中文标签
    plt.rcParams['axes.unicode_minus']=False  #用来正常显示负号
    
    plt.figure()#建立图像
    p = data.boxplot(return_type='dict') #画箱线图,直接使用DataFrame的方法
    x=p['fliers'][0].get_xdata() #'fliters'即为异常值的标签
    y=p['fliers'][0].get_ydata()
    y.sort() #从小到大排序,该方法直接改变原对象
    
    #用annotate添加注释
    #其中有些近似的点,注释会出现重叠,难以看清,需要一些技巧来控制
    #以下参数都是经过调试的,需要具体问题具体调试
    for i in range(len(x)):
        if i>0:
            plt.annotate(y[i],xy = (x[i],y[i]), xytext=(x[i]+0.05 -0.8/(y[i]-y[i-1]),y[i]))
        else:
            plt.annotate(y[i],xy = (x[i],y[i]), xytext =(x[i]+0.08,y[i]))
            
    plt.show()

    根据数据的描述中数量和总长度分析出缺失值个数

    根据箱状图的区间上界和下界之外的为异常值

     

    2、数据特征分析

    分布分析,对比分析,统计量分析、周期性分析、贡献度分析、相关性分析

    (1)分布分析揭示数据的分布特征和分别类型

    定量分布的用直方图,步骤1)求极差 2)决定组距和组数 3)决定分点 4)列出频率分布图 5)画直方图

    定性数据根据类型分组,用饼图或条形图

    (2)对比分析 

    相互联系的指标来比较 如线性图分析三个部门的销售额随时间变化

    分为 相对数比较,绝对数比较

    (3)统计量分析

    集中趋势分析: 均值,中位数,众数

    离中趋势分析:极差,标准差,变异系数,四分位数间距

    (4)周期性分析

    探索变量随着时间变化而呈现的周期性变化

    (5)贡献度分析

    帕累托分析,20/80原则:80%的利润来自%20最畅销的产品,其他80%的产品只产生20%利润

    (6)相关性分析

    分析变量之间的相关关系

    Pearson相关系数、Spearman秩相关系数、判定系数

  • 相关阅读:
    java——注解Annotation
    java——maven
    sklearn——回归评估指标
    java——单例模式
    java——极简handler机制
    java——为什么要有接口?和抽象类有什么不一样?
    java——cmd命令编译带包名的源程序
    [loj 2478][luogu P4843]「九省联考 2018」林克卡特树
    「线性基」学习小结
    FOI 冬令营 Day6
  • 原文地址:https://www.cnblogs.com/lan-meng/p/8569595.html
Copyright © 2011-2022 走看看