Azzera filtri
Azzera filtri

Mean Function with Matrix

3 visualizzazioni (ultimi 30 giorni)
civs
civs il 15 Lug 2014
Commentato: civs il 16 Lug 2014
I have a 3740x5 matrix called 'Rets'. I want to find the mean of every column vector. I tried using the function mean(Rets) and this is what I get:
mean(Rets)
ans =
1.0e-03 *
0.1591 0.2098 0.1475 -0.0623 -0.8807
I should only have 5 values in this row vector (from 0.1591 to -0.8807, as shown above), why do I have 6 values? I understand 1.0e-03 is the average of all the values in the row vector. So here is my question: How can I create a vector that only has these 5 values I need? Thanks!
  2 Commenti
John D'Errico
John D'Errico il 15 Lug 2014
Look at the little * there. * means multiplication in matlab.
civs
civs il 16 Lug 2014
Hi John, thanks for your answer. Please see my answer to James Tursa below.

Accedi per commentare.

Risposta accettata

James Tursa
James Tursa il 15 Lug 2014
Modificato: James Tursa il 15 Lug 2014
There are five values listed. Each of the five values in the 2nd row is multiplied by the factor 1.0e-3. It is MATLAB's way of writing the following equivalent information:
0.1591e-3 0.2098e-3 0.1475e-3 -0.0623e-3 -0.8807e-3
To convince yourself of this, do the following:
size(ans)
  3 Commenti
James Tursa
James Tursa il 16 Lug 2014
One is a row vector and the other is a column vector. You can't element-wise multiply a 1x5 with a 5x1. To get around this, e.g., you could turn the row vector into a column vector with the (:) notation, like this:
Wmin.*mean_ret_assets(:)
civs
civs il 16 Lug 2014
James, THANK YOU SOOOOO MUCH!!! It's looking good now, thank you thank you!!! :)

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by