MATLAB 数学与统计函数参考

MATLAB std 函数求标准差。默认是样本标准差(除以 n-1),可切换为总体标准差。

语法

s = std(A)
s = std(A, flag)        % flag=0 样本(默认),flag=1 总体
s = std(A, flag, dim)   % dim=1 按列,dim=2 按行

输入参数

参数说明
A数值数组
flag0 样本标准差(默认),1 总体标准差
dim计算维度

输出

s:标准差;矩阵默认每列一个值。

示例

data = [78 92 85 63 88];
std(data)
ans = 11.3870

总体标准差:

std(data, 1)

矩阵按行:

M = [1 2 3; 4 5 6];
std(M, 0, 2)
ans =
    1.0000
    1.0000

注意事项

  • var(方差)关系:std = sqrt(var);
  • 样本 vs 总体:std(data) 用 n-1,std(data,1) 用 n,n 很大时差别可忽略;
  • NaN 会污染结果,配合 'omitnan' 或先清洗。