我们知道总体标准差(σ)是按照下面的公式来计算的:
但是在真实世界中找到一个总体的标准差是不现实的。大多数情况下我们都是通过计算样本标准差(s)来估計总体标准差(σ)的。但是s的计算公式是这样的:
分母为什么要(n-1)呢,而不是n
维基百科给出的解释有点费解:
看过很多统计学的教程和问答,一个比较利于理解的通俗的解释是:__
分母为n的话算出来的s会低估总体标准差(σ)。__
下面用MATLAB编程来证明这一点大体是,我们隨机生成1000个整数作为总体然后从这个总体里抽取100个数,作为1个sample共抽取1000个sample。然后我们用两种方式计算一下这个sample的标准差即分母为n-1或者n,然后我们数一下这两种计算方式得到的s低于总体标准差(σ)的个数这
里我们统计1000次的结果,代码在最后面结果如下图,果不其然分母为n的时候会较多的低估总体标准差(1000个sample平均有550个低估了总体标准差),而分母为(n-1)的时候基本大差不差(1000个sample基本有一半低估一半高估)。
代码如下,可直接copy运行:
%% 总体(1000个1-100之间的整数),总体均值和总体标准差
%% 统计1000次结果每次1000个sample,看有多少次标准差低估总体标准差嘚
%样本的均值和“标准差(分母不减一)”
%样本的标准差分母减一
%分母不减一求样本标准差时候低估总体标准差的个数
%分母减一求样本標准差时候低估总体标准差的个数
title('分母不减一求样本标准差')
title('实际求样本标准差(分母减一)')