美文网首页解密大数据
数据分析和统计——直方图

数据分析和统计——直方图

作者: 阿車 | 来源:发表于2017-03-11 18:39 被阅读0次

    直方图就是将数据值所在范围分成若干个区间,在图上画出每个区间上数据的个数。数据分布直方图画法参详Tiger:人人都能用数据-统计学和直方图
    在绘制直方图时,组数确定很重要。如果组数太少,会丢失部分数据信息,抹杀数据间的差异性,如果组数太多,会影响数据分组规律的明显性,不易观察规律。

    使用pandas、matplotlib 绘制直方图

    绘制体重分布直方图

    数据集格式:
       weight
    0      48
    1      44
    2      48
    3      52
    4      58
    
    数据集汇总信息:
    count    80.000000
    mean     50.700000
    std       6.267053
    min      38.000000
    25%      47.000000
    50%      50.000000
    75%      54.000000
    max      69.000000
    Name: weight, dtype: float64
    

    绘制直方图

    import pandas as pd
    import numpy as np
    import matplotlib.pyplot as plt
    weight_file_path = "C:/Users/ajv/Desktop/DA/weight.txt"
    df_weight = pd.read_csv(weight_file_path)
    print df_weight.head()
    print df_weight['weight'].describe()
    weight_mean = df_weight['weight'].mean()
    weight_variance = df_weight['weight'].var()
    fig = plt.figure()  # 创建画布
    ax = fig.add_subplot(111)   # 创建子图。 画布分割成1行1列,从左到右从上到下第1幅
    ax.hist(df_weight['weight'], bins=10, color='blue', alpha=0.8)  # bins控制柱子宽窄疏密,appha
    plt.text(60, 10, u'均值: %s\n方差: %s' % (weight_mean, weight_variance), fontproperties='SimHei')
    plt.xlabel(u"体重/kg", fontproperties='SimHei')
    plt.ylabel(u"频数", fontproperties='SimHei')
    plt.title(u'体重的直方图', fontproperties='SimHei')   # 设置标题,正常显示中文
    plt.savefig('C:/Users/ajv/Desktop/DA/weight.png')
    
    weight.png

    数据集特征
    体重数据集共有80个记录,分布在44-50kg的人数 最多,平均体重为50.7k,标准差为6.27,波动较小。


    绘制航空公司客户分布直方图

    数据集格式:
        Month  NumPassengers
    0  Jan-49            112
    1  Feb-49            118
    2  Mar-49            132
    3  Apr-49            129
    4  May-49            121
    
    数据集汇总信息:
    count    144.000000
    mean     280.298611
    std      119.966317
    min      104.000000
    25%      180.000000
    50%      265.500000
    75%      360.500000
    max      622.000000
    

    绘制直方图

    AirPassengers_file_path = "C:/Users/ajv/Desktop/DA/AirPassengers.csv"
    df_air_passengers = pd.read_csv(AirPassengers_file_path)
    print df_air_passengers.head()
    print df_air_passengers['NumPassengers'].describe()
    air_passengers_mean = df_air_passengers['NumPassengers'].mean()
    air_passengers_variance = df_air_passengers['NumPassengers'].var()
    fig = plt.figure()  # 创建画布
    ax = fig.add_subplot(111)   # 创建子图。 画布分割成1行1列,从左到右从上到下第1幅
    ax.hist(df_air_passengers['NumPassengers'], bins=24, color='green', alpha=0.6)  # bins控制分组,appha设置参数点的透明度
    plt.text(500, 10, u'均值: %s\n方差: %s' % (air_passengers_mean, air_passengers_variance), fontproperties='SimHei')
    plt.xlabel(u"乘客数", fontproperties='SimHei')
    plt.ylabel(u"频数", fontproperties='SimHei')
    plt.title(u'某航空公司客户的直方图', fontproperties='SimHei')   # 设置标题,正常显示中文
    plt.savefig('C:/Users/ajv/Desktop/DA/air_passengers.png')
    plt.show()
    
    air_passengers.png

    数据集特征
    航空公司乘客数据集共有144个记录,每月平均乘客数为144,标准差为119.97,每月乘客数波动性较大。

    相关文章

      网友评论

        本文标题:数据分析和统计——直方图

        本文链接:https://www.haomeiwen.com/subject/ueczgttx.html