How to coup with matrix dimension?

1 visualizzazione (ultimi 30 giorni)
Tallha Akram
Tallha Akram il 14 Set 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.

Risposte (1)

Wayne King
Wayne King il 14 Set 2012
Modificato: Wayne King il 14 Set 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 Commenti
Tallha Akram
Tallha Akram il 14 Set 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 il 14 Set 2012
I'm not sure what you're saying. If you have a 200x2 matrix, the covariance matrix is 2x2

Accedi per commentare.

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by