average every sets of rows
조회 수: 21 (최근 30일)
이전 댓글 표시
Hello everyone,
I have a 1629 by 1 matrix, and I wish to average every n rows, and place in a new matrix.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1202283/image.png)
where n = 1629.
For this example, the arrays are averaged every 7 rows.
My aim is to have a function which tells matlab to average every k rows, where k can be 7 as in the diagram above, but k can be other values too. So, I won't be telling matlab how many rows will be in the final matrix.
If anyone has an explanation on how to tackle this, please let me know.
I have been trying a double for loop,
so
for n=1:size(meanE,1); % mean E is the matrix above, with 1629 rows
for v=n:n+1/res %1/res is the increment, in the example above, it is 7
meanF=mean(meanE,'all') %trying to calculate the average between the set rows
meanF=meanF(); %trying to place the average of each set rows in a new array
end
end
Please help me understand. I started learning matlab a few weeks ago, and any help will be very much appreciated.
Kind regards,
Anshul
댓글 수: 0
채택된 답변
David Hill
2022년 11월 21일
a=20*rand(1629,1);
k=7;
e=floor(length(a)/k)*k;
r=reshape(a(1:e),k,[]);
M=mean(r)
추가 답변 (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!