how to find a mean across rows
조회 수: 4 (최근 30일)
이전 댓글 표시
i have a code that produces a matrix, i want it to find the mean across the rows rather than down each column. i tried the below but keep getting an error.
??? In an assignment A(I) = B, the number of elements in B and
I must be the same.
lambdaMJ = 7.2;
MJ_Flow = (30/60)*2;
A = 100;
B = 70;
C = 4;
D = B + C;
E = A - B - C;
for a = 1:5;
Num_cylces = 1;
XMJ=(poissrnd(lambdaMJ, A, Num_cylces));
lambdaMJ_sec(a) = mean(XMJ)/10;
FMJ_cars_wait = @(T11,MJ_V11) (lambdaMJ_sec(a));
[T11,MJ_V11] = ode45(FMJ_cars_wait,[0,E],MJ_Flow);
Major11(a) = mean(MJ_V11,2); %CANT GET THIS TO WORK
end
댓글 수: 0
채택된 답변
Image Analyst
2013년 10월 4일
편집: Image Analyst
2013년 10월 5일
What is the loop for? It's not needed. Just do this:
Major11 = mean(MJ_V11,2);
If MJ_V11 changes inside the loop, then you can still have it in the loop:
for a = 1 : 5 % No() or ; needed
MJ_V11 = whatever.....
Major11(a) = mean(MJ_V11(a,:),2);
end
Note how I added an index to Major11 so that it doesn't get overwritten every time.
댓글 수: 8
Image Analyst
2013년 10월 5일
That's because you had
for a = 1:5
If you want all the rows, you need to go over all the rows, not just 5 of them:
[rows, columns] = size(MJ_V11);
for a = 1 : rows
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!