matlab中cov/corr2/normxcorr2/xcorr/corrcoef的区别
(2013-09-02 22:17:58)分类: Matlab |
- cov是算方差的,corr2是算相关的。
- cov是除以(N-1)的,corr2是除以N的,假设N是向量的长度的话。除以(N-1),从统计学角度上说,是无偏估计,而除以N是有偏估计。
- corrcoef是换算相关矩阵的,也就是说可以输入M个向量,会生成MXM的矩阵。
- xcorr;自相关函数是描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度。以两个不同信号(序列)为例,xcorr函数是通过不反折的卷积来衡量这两个信号在不同位置的相似程度,假设两个序列的长度分别是m和n,则得到的是一个长度为2*max(m,n)-1的序列,也就是说,当m和n不相等的时候,在执行xcorr的时候会先对短的那个序列进行0扩充,使得m与n相等;
- corrcoef函数是通过协方差矩阵来衡量这两个信号在不同局部的相似程度,计算公式是:C(1,2)/SQRT(C(1,1)*C(2,2)),其中C表示矩阵[f,g]的协方差矩阵,假设f和g都是列向量(这两个序列的长度必须一样才能参与运算),则得到的(我们感兴趣的部分)是一个数。以默认的A=corrcoef(f,g)为例,输出A是一个二维矩阵(对角元恒为1),我们感兴趣的f和g的相关系数就存放在A(1,2)=A(2,1)上,其值在[-1,1]之间,1表示最大的正相关(例如x=[1;2;3], y=[5;7;9]),-1表示绝对值最大的负相关(例如x=[1;2;3], y=[12;7;2])。对于一般的矩阵X,执行A=corrcoef(X)后,A中每个值的所在行a和列b,反应的是原矩阵X中相应的第a个列向量和第b个列向量的相似程度(即相关系数)。
来自:百度
前一篇:再谈协方差矩阵之主成分分析
后一篇:卷积的意义(转)