标准差是一组数据变异性或离散性的测量,是不稳健的尺度测量。它是方差(variance, s 2 或 S 2 )的平方根。利用平均数的方差计算上等于各个数值与平均数离差的平方和除以样本量( n )与1的差,可用以下公式表示:
其中, X i 是样本中的任一数值, 是样本中各数值的平均数, n 为样本量, n -1是自由度(degrees of freedom)。自由度是样本中可以自由变化的数值的个数。使用 n -1而不使用 n 的主要理由是要确保样本方差 是总体方差 的无偏估计。如果用 n 作为分母,样本方差一般会低估总体方差,虽然在大样本中,这种偏差是可以忽略不计的(Woods et al .,2000,p.96)。
自由度是非常重要的统计概念,似乎也是不太好理解的概念。我们来做一个模拟(simulation)试验说明为什么方差的计算用 n -1而不用 n 。假如从标准正态分布(平均数 μ =0,标准差 σ =1)总体中随机抽取 n =8的样本10 000次。利用公式3.5计算样本方差,得到10 000个样本方差。再将方差计算中的自由度 n -1换成样本量 n 重新计算样本方差,得到10 000个样本方差。模拟结果表明,使用自由度 n -1得到的样本方差平均数是0.99,中位数是0.90,非常接近总体方差1。相比之下,使用样本量 n 得到的样本方差平均数是0.87,中位数是0.79。由此可见,使用 n -1使样本方差估计更接近总体值。
假如有变量 Y 的一组数据( n =20):10,12,10,7,6,12,13,15,8,9,13,6,8,11,10,6,11,11,6,16,试求该组数据的标准差。该组数据平均数 M =10。根据公式3.5, s 2 = ≈9.05 。因此, s ≈3.01。计算方差和标准差的R函数分别为var(x)和sd(x),其中x是数值向量。
方差和标准差是应用最为广泛的离散性指标。方差和标准差越大,说明数据分布越分散,偏离集中趋势统计量的程度就越大。方差和标准差越小,说明数据分布就越集中,偏离集中趋势统计量的程度就越小。由于方差改变了原数值的单位,标准差保留了原数值的单位,因此方差主要用于统计量的计算,标准差更便于对数据的解释。在概括数据时,标准差是必不可少的。
标准差的一个重要应用是将原始分数标准化,得到标准分(standard score)。标准分,又称Z分数(Z-score),是原始分与平均数的离差与标准差的商,计算公式为:
其中, X 为原始分, 为平均数, s 为标准差。一组数据各个标准分的平均数是0,标准差是1。后面提到的标准正态分布就是利用了标准分的这一特点。标准分能够表明原始分数偏离平均数的方向(标准分有正负值之分)和程度,不仅可以表示原数据在同一分布中的位置,还可以用来比较不同分布中原数据的相对大小。计算Z分数的R函数是scale(x,center=TRUE,scale=TRUE),其中x是数值向量或矩阵,变元center=TRUE指中心化方法采用每个向量值或每列数值减去向量值平均数或对应列的平均数,scale=TRUE指尺度测量为标准差( s )。
样本20%( γ =0.2)缩尾标准差(Winsorized standard deviation, )是稳健的尺度测量,是样本20%缩尾方差的平方根。统计分析使用截尾平均数时,缩尾标准差发挥着至关重要的作用。要计算样本缩尾方差,先要计算缩尾平均数(Winsorized mean, )。令 g =[ γ n ],其中[·]表示取整数部分。将一组数据由小到大排序,然后将两端 g 个值分别替换为保留在样本中的最接近的极小值和极大值,由此得到的数值称作 γ 缩尾值(Winsorized values, )。即,对于变量 X 的一组数据(样本量为 n ),由小到大排序后的数值记作 ,则样本缩尾值满足以下条件(Wilcox,2012a,p.59):
20%缩尾值( W i )的平均数称作20%缩尾平均数。20%缩尾方差的计算公式为:
假如有变量 Y 的一组数据( n =20):2,6,9,12,8,10,10,11,10,12,12,13,10,37,31,9,8,13,33,40,试求20%缩尾标准差。将该组数据由小到大排序,得到:2,6,8,8,9,9,10,10,10,10,11,12,12,12,13,13,31,33,37,40。缩尾量g=[ 0.2 n]=4 , 则缩尾值为:9,9,9,9,9,9,10,10,10,10,11,12,12,12,13,13,13,13,13,13。根据这些缩尾值得到20%缩尾平均数 =10.95。根据公式 3.7,得到: + (9-10.95) 2 +…+(13-10.95) 2 +(13-10.95)}≈2.89,因此,缩尾标准差s w =1. 70 。 计算缩尾平均数的R函数是数据包Rallfun-v37中的winmean(x,tr=0.2),其中tr=0.2是函数默认截尾量。缩尾方差和缩尾标准差的R函数分别是数据包Rallfun-v37中的winvar(x,tr=0.2)和winsd(x,tr=0.2),其中tr=0.2 是函数默认截尾量。