用 Matlab 计算方差
Variance calculation with Matlab
我不明白为什么 MATLAB 在计算方差时不按数据大小对数据进行归一化。例如:
a=[1 2 3];
var(a); %// 1
但是我们知道方差的基本定义是:
variance(a) = ((a(i)-mean(a))^2) / size(a) %// here size(a)=3
%//this formula gives a variance equal to 2/3
有什么想法吗?
在the docs中有解释:
MATLAB 默认使用 unbiased sample variance 的公式
我不明白为什么 MATLAB 在计算方差时不按数据大小对数据进行归一化。例如:
a=[1 2 3];
var(a); %// 1
但是我们知道方差的基本定义是:
variance(a) = ((a(i)-mean(a))^2) / size(a) %// here size(a)=3
%//this formula gives a variance equal to 2/3
有什么想法吗?
在the docs中有解释:
MATLAB 默认使用 unbiased sample variance 的公式