MATLAB中均值、方差、均方差的計算方法
1、 均值
數學定義:
Matlab函數:mean
>>X=[1,2,3]
>>mean(X)=2
如果X是一個矩陣,則其均值是一個向量組。mean(X,1)為列向量的均值,mean(X,2)為行向量的均值。
>>X=[1 2 3
4 5 6]
>>mean(X,1)=[2.5, 3.5, 4.5]
>>mean(X,2)=[2
5]
若要求整個矩陣的均值,則為mean(mean(X))。
>>mean(mean(X))=3.5
也可使用mean2函數:
>>mean2(X)=3.5
median,求一組數據的中值,用法與mean相同。
>>X=[1,2,9]
>>mean(X)=4
>>median(X)=2
2、 方差
數學定義:
均方差:
Matlab 函數:var
要注意的是var函數所采用公式中,分母不是 ,而是 。這是因為var函數實際上求的並不是方差,而是誤差理論中“有限次測量數據的標准偏差的估計值”。
>>X=[1,2,3,4]
>>var(X)=1.6667
>> sum((X(1,:)-mean(X)).^2)/length(X)=1.2500
>> sum((X(1,:)-mean(X)).^2)/(length(X)-1)=1.6667
var沒有求矩陣的方差功能,可使用std先求均方差,再平方得到方差。
std,均方差,std(X,0,1)求列向量方差,std(X,0,2)求行向量方差。
>>X=[1 2
3 4]
>>std(X,0,1)=1.4142 1.4142
>>std(X,0,2)=0.7071
0.7071
若要求整個矩陣所有元素的均方差,則要使用std2函數:
>>std2(X)=1.2910