2011-05-06 98 views
1

我尝试计算一组直方图向量的相关矩阵。但结果是我想(我想)的截断版本。我有200个直方图每个32个分箱。向量集合的相关矩阵

correlation_matrix = corrcoef(set_of_histograms) 

是32乘32的矩阵。

我想用它来计算我的原始直方图是如何匹配的。 (这通过后来使用eigs和其他东西)。

但是哪种相关方法适合这个?我尝试过“corrcoef”,但也有“corr”和“cov”。无法通过阅读MATLAB帮助理解它们的差异......

回答

2
correlation_matrix = corrcoef(set_of_histograms') 

(注意'

1

1)corrcoef对待每一个列的观察,并计算出每对之间的相关性。我假设你的直方图矩阵是200x32;因此,就你而言,每一行都是一个观察。如果您在运行corrcoef之前转置您的直方图矩阵,则应该得到您要查找的200x200结果:

[rho,p] = corrcoef(set_of_histograms');

(”转置矩阵)

2)COV返回协方差矩阵,而不是相关性;而协方差矩阵用于计算相关性,这不是您要查找的度量。 3)至于corr和corrcoef,它们之间有一些实现差异。只要你只对皮尔森的相关性感兴趣,它们对你而言是相同的。 corr也可以选择计算Spearman's或Kendall的相关性,这是corrcoef所没有的。