for loop in for loop not storing all variables
조회 수: 3 (최근 30일)
이전 댓글 표시
In the simplest way, I am trying to get 3 random (x,y) data sets per group with a total of 5 groups. (So 15 x coordinates and 15 y coordinates in total). Every time I use my mean(x) to find the average x. My for loop only calculates the mean for my groups of x coordinates. How do i do it for all 15 x coordinates?
for j=1:5
for i=1:3
x(i)= rand();
y(i)= rand();
hold on
end
hold on
h=mean(x)
end
댓글 수: 0
채택된 답변
Walter Roberson
2021년 11월 23일
for j=1:5
for i=1:3
x(i,j)= rand();
y(i,j)= rand();
hold on
end
hold on
h(j)=mean(x(:,j))
end
mean(x,1)
mean(x,2)
You can see that if you stored all of the values, that mean(x,1) calculates the same thing as taking the mean of each column at the time you generate the column.
댓글 수: 0
추가 답변 (1개)
Dameon Solestro
2021년 11월 24일
댓글 수: 1
Walter Roberson
2021년 11월 24일
In the code I posted in https://www.mathworks.com/matlabcentral/answers/1593204-for-loop-in-for-loop-not-storing-all-variables#answer_837899 then you would just use
x - mean(h)
Note that each element of your h is a mean of a column, so mean(h) would be mean of the means
참고 항목
카테고리
Help Center 및 File Exchange에서 NaNs에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!