关于matlab std2求值出错的问题
发布网友
发布时间:2024-07-03 21:08
我来回答
共2个回答
热心网友
时间:2024-08-02 11:19
除以n还是n-1
涉及到概率论与统计的知识
这自己找资料查
而使用std函数是可以获得这两种标准差的
>> std(x)
ans =
1.8708
>> std(x,1)
ans =
1.7078
其实std(x,0)计算除以n-1的标准差,第二个参数默认是0,所以std(x)等价于std(x,0)
而std(x,1)计算除以n的标准差
而std2是用于计算矩阵元素的标准差,将多维的矩阵元素连成一列,再统计
实际上std2(x)是使用 std(x(:)),但是只能计算除以n-1的标准差,不能再选择
如果你要除以n的标准差
对于向量可以std(x,1)
对于矩阵可以std(x(:),1)
热心网友
时间:2024-08-02 11:19
统计中是按n-1算的,样本的方差如此定义是为了检验时有好的性质,如果按n计算,有些统计量就出现了一个系数,当样本量大的时候,实常数1.因此,定义为n-1更加合理