机器学习:Python实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

6.7 数据的分布分析

通过分析数据的高斯分布情况来确认数据的偏离情况。高斯分布又叫正态分布,是在数据、物理及工程等领域都非常重要的概率分布,在统计学的许多方面有着重大的影响。高斯分布的曲线呈钟形,两头低,中间高,左右对称。在高斯分布图中,y轴两点之间的面积是发生的概率。在很多机器学习算法中都会假定数据遵循高斯分布,先计算数据的高斯偏离状况,再根据偏离状况准备数据。我们可以使用DataFrame的skew()方法来计算所有数据属性的高斯分布偏离情况。代码如下:

    from pandas import read_csv
    # 计算数据的高斯偏离
    filename='pima_data.csv'
    names=['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age',
    'class']
    data=read_csv(filename, names=names)
    print(data.skew())

skew()函数的结果显示了数据分布是左偏还是右偏。当数据接近0时,表示数据的偏差非常小。执行结果如下:

    preg    0.901674
    plas    0.173754
    pres    -1.843608
    skin    0.109372
    test    2.272251
    mass    -0.428982
    pedi    1.919911
    age      1.129597
    class    0.635017
    dtype: float64