reshaping multiple data sets

I have a 50x4 double. I want to reshape each column of the matrix by taking the mean of every 10 elements.
I have tried writing a loop to do this but it only writes the last iteration. I have tried indexing into this but I get the error:
Brace indexing is not supported for variables of this type.
for a = 1:4;
Out = mean(reshape(vel{a}(1:50),10,[]),1);
end

답변 (1개)

Voss
Voss 2021년 10월 6일

0 개 추천

The error happens because vel is not a cell array.
To keep the result from each iteration of the loop, you can make Out a matrix and store the result in each column of Out:
Out = zeros(size(vel,1)/10,4);
for a = 1:4
Out(:,a) = mean(reshape(vel(:,a),10,[]),1).';
end

카테고리

도움말 센터File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

제품

태그

질문:

2021년 10월 6일

답변:

2021년 10월 6일

Community Treasure Hunt

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

Start Hunting!

Translated by