首页 > 编程知识 正文

方差与均值的转换公式,方差计算公式两种

时间:2023-05-05 14:16:34 阅读:169358 作者:964

by luoshi006

3358www.Sina.com/和均值的数值计算方法。

读px4码时,遇到求均值和方差码的实现,比较优美:

3359 github.com/px4/ECL/blob/master/validation/data _ validator.CPP # l88-l114

for(unsignedI=0; i dimensions; I ) if(_time_last==0) { _mean[i]=0; _lp[i]=val[i]; _M2[i]=0; } else { float LP _ val=val [ I ]-_ LP [ I ]; float delta_val=lp_val - _mean[i]; _ mean [ I ]=delta _ val/_ event _ count; _ m2 [ I ]=delta _ val * (LP _ val-_ mean [ I ] ); _rms[I]=sqrtf(_m2[I]/) _event_count-1 ); if(fabsf(value[I]-val[I] ) 0.000001f ) { _value_equal_count; } else { _value_equal_count=0; } _ vibe [ I ]=_ vibe [ I ] * 0.99 f 0.01 f * fabsf (val [ I ]-_ LP [ I ]; //XXX replace with better filter,make it auto-tunetoupdaterate _ LP [ I ]=_ LP [ I ] * 0.99 f 0.01 f * val [ I ]; _value[i]=val[i]; }

其分析如下

在以下公式中,约定vj v j表示样本中的第j个值:

平均值(1) meann=v1 v2 . vnn(2)2)=meann#x2212; 1#x2217; (n#x2212; 1 ) VNN(3)=meann#x2212; 1 vn#x2212; 测量# x 2212; 1n#xA0; ' role=' presentation ' meann=v1 v2 . vnn=mean n1 (n1 ) VNN=meanN1VNMEANN1N(1)2)3)1) meann=v1 v1 v2 .

也就是说:

//这里的代码是px4验证器代码。 float delta_val=lp_val - _mean[i]; _ mean [ I ]=delta _ val/_ event _ count; 样本方差

rms=vnmeann(2n1rms=) vnmeann ) 2n1

这是为了确保统计中分母为n1 n 1,并且没有估计的无偏性。

//这里的代码是px4验证器代码。 _ m2 [ I ]=delta _ val * (LP _ val-_ mean [ I ] ); _rms[I]=sqrtf(_m2[I]/) _event_count-1 ); 其中,方差的计算公式如下。

m2=(vnmn1) vnmn )=) vnmn1) vnmn1n )=(n1n ) ) vnmn1)2)4)5)5) m2 ) vnmn1vnmn 1n () )

着急,这个公式找不到出处,被怀疑与下一行的分母n1 n 1有关。

_M2[i]

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。