我们所分析的数据并不一定是相当规则,可能有某种程度的变动(例如下图的二组数据分布就呈现
相当的扰动),而这些变动值的特性如何量化?
图5.1 扰动的数据,由乱数方式产生
而从这些数据的分布,假设我们可以计算这些数据的平均值,我们即可以此平均值来估计数据的变动值有
多大。如果一组数据的变动程度大,则其与平均值的差异会增加。反过来说,变动程度小的数据所形成的
与平均值差异也减小。而标准差(standard deviation,
)
即是依此叙述定义的统计值。标准差的计算方式如
下:计算各个数据与平均值的差,再取平方以避免
有负的差值,之后做总和在除以数据的总数。所以:
其中
称为变异数 (variance),
代表数据,N为数据的总数,
为平均值。MATLAB
提供一个函数 std 计算标准差。见以下的例子
>> rains % 再以rains阵列做例子
rains =
126.8 148.5 173.0 148.4 194.7 208.9
328.8 300.7 268.3 210.5 278.4 321.5
>> s_dev=std(rains) % 计算每一行数据的标准差
s_dev =
142.8356 107.6217 67.3873 43.9113 59.1848 79.6202
>> s_dev=std(s_dev)
s_dev =
36.1544