昨天一网友求助我,matlab方差怎么求的不对,我当时也不清楚,后来看了一下help以及网络资源,发现网上讲的很详细,今天就整理了一点总结。 按求取方差公式的不同,方差有两种biased(有效估计的方差)和unbiased(无偏估计的方差),前者除以n;后者除以n-1,叫做Bessel's correction,可以修正样本的variance,更精确描述样本空间。matlab默认采用的是后者。 下面例举matlab求方差的操作,在MATLAB中,默认为无偏估计。 b1 = var(a); % 按默认来求 d3 = var(a, 1, 1); % 对每列操作(用N) f = var(a(:)); % 通过直接访问矩阵的存储,来对矩阵进行操作 另外,如果觉得对矩阵操作不方便的话,可先将矩阵化为向量再求方差。 a=reshape(a,M*N,1); Vr=var(a); 即可求得。 |
|