필터 지우기
필터 지우기

Mean Function with Matrix

조회 수: 3 (최근 30일)
civs
civs 2014년 7월 15일
댓글: civs 2014년 7월 16일
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
John D'Errico
John D'Errico 2014년 7월 15일
Look at the little * there. * means multiplication in matlab.
civs
civs 2014년 7월 16일
Hi John, thanks for your answer. Please see my answer to James Tursa below.

댓글을 달려면 로그인하십시오.

채택된 답변

James Tursa
James Tursa 2014년 7월 15일
편집: James Tursa 2014년 7월 15일
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
James Tursa
James Tursa 2014년 7월 16일
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 2014년 7월 16일
James, THANK YOU SOOOOO MUCH!!! It's looking good now, thank you thank you!!! :)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by