2.3 分布
汇总统计量简单明了,但风险也大,因为它们很有可能会掩盖数据的真相。另一种方法就是看数据的分布(distribution),它描述了各个值出现的频繁程度。
表示分布的最常用的方法是直方图(histogram),这种图用于展示各个值出现的频数或概率。
在这里,频数指的是数据集中一个值出现的次数,跟声音的音高和无线电讯号的调频没有关系。概率就是频数除以样本大小n。
在Python中,计算频数最简单的方法就是用字典。给定一个序列t:
hist = {}
for x in t:
hist[x] = hist.get(x, 0) + 1
得到的结果是一个将值映射到其频数的字典。将其除以n 即可把频数转换成概率,这称为归一化(normalization):
n = float(len(t))
pmf = {}
for x, freq in hist.items():
pmf[x] = freq / n
归一化之后的直方图称为PMF(Probability Mass Function,概率质量函数),这个函数是值到其概率的映射(习题6-5中会介绍“质量”的含义)。
将Python中的字典称为函数可能会让部分读者感到困惑。在数学中,函数就是一组值到另一组值的映射。在Python中,我们通常用函数对象表示数学中的函数,但这个例子中用的是字典(字典也被称为“映射”,所以称其为“函数”也是可以理解的)。