parkshinyang 发表于 2012-4-16 13:02

MATLAB中均值、方差、均方差的计算方法

经常要用到,系统整理了一下。

1、 均值
数学定义:

Matlab函数:mean
>>X=
>>mean(X)=2

如果X是一个矩阵,则其均值是一个向量组。mean(X,1)为列向量的均值,mean(X,2)为行向量的均值。
>>X=[1 2 3
     4 5 6]
>>mean(X,1)=
>>mean(X,2)=[2
             5]

若要求整个矩阵的均值,则为mean(mean(X))。
>>mean(mean(X))=3.5
也可使用mean2函数:
>>mean2(X)=3.5

median,求一组数据的中值,用法与mean相同。
>>X=
>>mean(X)=4
>>median(X)=2

2、 方差
数学定义:

均方差:
Matlab 函数:var
要注意的是var函数所采用公式中,分母不是 ,而是 。这是因为var函数实际上求的并不是方差,而是误差理论中“有限次测量数据的标准偏差的估计值”。
>>X=
>>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

轻歌呤朦胧 发表于 2012-4-16 22:46

{:soso__5435380074930865576_2:}哦,很棒很棒!!!
页: [1]
查看完整版本: MATLAB中均值、方差、均方差的计算方法