方差和標準方差。
方差:表示壹組離散數據偏離平均值的程度。
公式:
方差公式
方差的算術平方根叫做隨機變量的標準差。
在Matlab中,方差由var函數計算,標準差由std函數計算。
以下轉自:Matlab方差不同於用std或var的公式計算的方差-MATLAB中文論壇
和MATLAB求方差函數var-MATLAB中文論壇
請問如何用matlab求壹組數據的均方誤差和方差,用std或var得到的結果和用公式計算的結果不壹樣?
妳最近所做的應該是測量兩個樣本的可分辨性。懶得用那些復雜的東西,只想用兩個樣本的均值差除以兩個樣本的方差和。
我查了壹下MATLAB中的var是用來計算樣本方差的。
但是好像有些錯誤。
例如,輸入樣本A =[123];根據方差求解法,A的方差應為(1+0+1)/3 = 0.666666...使用var(a),MATLAB輸出的結果是1。為什麽?
回答:
1.出現這種情況的原因:
方差的公式是:實際值與期望值之差的平方和再除以n。
這個公式是針對測量總體的,而matlab的函數var和std認為運算對象是測量總體的樣本,所以使用的公式是實際值與期望值之差的平方和再除以(N-1)而不是N。
具體應該用哪個定義,要具體分析。
2.解決方案:
& gt& gtvar(a,1)?%除數是n
ans =0.6667
& gt& gtvar(a,0)%的除數是N-1,相當於var(a),兩者都除以N-1。
ans=1