Effacer les filtres
Effacer les filtres

How to coup with matrix dimension?

1 vue (au cours des 30 derniers jours)
Tallha Akram
Tallha Akram le 14 Sep 2012
I have equation e.g a* (b*b') to update Covariance Matrix.
a=(200 * 2) 200 rows and 2 cols
b=(200 * 2)
I need an output of dimension (2 * 2), How to deal with this problem. Is there any mathematical Concept i am Lacking?
Thanks in Advance.

Réponses (1)

Wayne King
Wayne King le 14 Sep 2012
Modifié(e) : Wayne King le 14 Sep 2012
a = randn(200,2);
c = a'*a;
You can just use cov()
a = randn(200,2);
y = cov(a);
The equivalence can be made exact by scaling the output of a'*a along with zero-meaning the columns.
So compare:
a = randn(200,2);
ac = bsxfun(@minus,a,sum(a,1)/200);
(ac'*ac)/199
with
cov(a)
  2 commentaires
Tallha Akram
Tallha Akram le 14 Sep 2012
Dear King, b matrix can only be of either dimension (2*2) or (200,200) , as i am taking transpose.
Wayne King
Wayne King le 14 Sep 2012
I'm not sure what you're saying. If you have a 200x2 matrix, the covariance matrix is 2x2

Connectez-vous pour commenter.

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by