Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.



Re: Matlab  RMSvalue
Posted:
Oct 11, 2012 10:08 AM


> RMS1 = sqrt( mean(inVec)^2 + var(inVec) ); > RMS2 = sqrt( 1/length(inVec) * sum(inVec.^2) ); ... > Why is there a difference ? Roundoff error or something else ?
You're right, something else. Ordinarily var uses 1/(n1) rather than 1/n in estimating the variance of a sample of size n. You can supply a flag to get it to use 1/n, and then the results match:
>> v = 1:10; >> sqrt(mean(v)^2 + var(v)) ans = 6.2783 >> sqrt(1/length(v) * sum(v.^2)) ans = 6.2048 >> sqrt(mean(v)^2 + var(v,1)) ans = 6.2048
 Tom



