Filter löschen
Filter löschen

Mean Function with Matrix

3 Ansichten (letzte 30 Tage)
civs
civs am 15 Jul. 2014
Kommentiert: civs am 16 Jul. 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 Kommentare
John D'Errico
John D'Errico am 15 Jul. 2014
Look at the little * there. * means multiplication in matlab.
civs
civs am 16 Jul. 2014
Hi John, thanks for your answer. Please see my answer to James Tursa below.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

James Tursa
James Tursa am 15 Jul. 2014
Bearbeitet: James Tursa am 15 Jul. 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 Kommentare
James Tursa
James Tursa am 16 Jul. 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 am 16 Jul. 2014
James, THANK YOU SOOOOO MUCH!!! It's looking good now, thank you thank you!!! :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by