std(A, 0, 3) 是什么意思?

What does std(A, 0, 3) mean?

我是运行以下代码,我在其中生成十个具有随机值的 4 x 4 矩阵。

A = zeros(4,4,10);
for idx = 1:size(A,3)
   A(:,:,idx) = [1 2 3 4; 5 6 7 8; 9 10 11 12; 0 0 0 1].*randn(4,4)
end

X = std(A, 0, 3)

X = std(A, 0, 1)给出每列的标准差,
X = std(A, 0, 2)给出每一行的标准差。

X = std(A, 0, 3) 给出了什么?

我得到一个 4x4 矩阵值答案如下

4.0479    2.7137    1.8706    1.2579
4.9812    9.0766    7.2079    4.1866
1.0548    2.7205    3.3140    3.8712
     0         0         0    0.8496

X = std(A, 0, 3) 是第三维度的标准偏差

0 参数是偏置归一化的自由度。在这种情况下,分母是 N-1

如果你使用1,它将是N


来自文档:

w — 重量 0(默认) | 1 |向量 权重,指定为以下值之一:

0 — 通过 N-1 归一化,其中 N 是观测值的数量。如果只有一个观察值,则权重为 1。 1 — 按 N 归一化。 由与计算标准差的 A 维度相对应的非负标量权重组成的向量。