当我们拿到一组数据之后,我们如何来了解数据的基本信息呢,在统计学上,除了使用图表的方式外,还可以通过找到能反应数据分布的特征值来做这件事请。数据的分布特征,大致可以从一下三个方面进行度量:集中趋势;离散程度;分布形状。
集中趋势度量
众数 M0
众数是一组数据中出现次数最多的数据,用 M0 表示。主要用于度量分类数据的集中趋势
import numpy as np
import pandas as pd
%matplotlib inline
# category
categories = ['Very satisfied', 'Satisfied', 'Neutral', 'Dissatisfied', 'Very dissatisfied']
# 使用numpy来模拟生成一份满意度调查问卷,总计100份问卷
questionnaire = pd.Series(np.random.choice(categories, 100, p=[0.2, 0.5, 0.1, 0.1, 0.1]))
questionnaire.describe()
count 100 unique 5 top Satisfied freq 49 dtype: object 可以看出调查问卷中最多的人选择的是’满意‘
questionnaire.value_counts(sort=False).plot(kind='bar', rot=45, grid=True)
![这里写图片描述](https://img-blog.csdn.net/20160817105055845)
中位数和分位数
对于顺序数据来说,可以通过分位数来观测数据的集中趋势,其中比较中有的有中位数和四分位数,分位数一个主要的有点是不受极值的影响。
s = pd.Series(np.random.rand(10), name='A')
s.describe()
count 10.000000 mean 0.649277 std 0.310228 min 0.018317 25% 0.449891 50% 0.803827 75% 0.880789 max 0.913599 Name: A, dtype: float64 可以从统计描述中看出极大值,极小值,中位数,四分位数
s.plot.box(grid=True, ylim=[0,1])
![png](https://img-blog.csdn.net/20160817105140516) 从上面的线箱图可以看出数据的集中趋势
平均数 x¯
对于数值型数据来说,平均数是数据统计的基础,数据的方差标准差等度量都是基于平均数来计算的。
简单平均数的计算公式:
∑ni=1xin
对于分组数据来说,计算平均值可以使用加权平均数计算公式:
∑ni=1Mifin
还有一种特殊的平均数,叫做几何平均数,主要用于计算平均比率,应当注意的是,数据中出现负值跟零值时,不能使用几何平均数,计算公式如下:
G=∏i=1nxi−