averaging 20 values within 1000 data points
2 次查看(过去 30 天)
显示 更早的评论
Hello all,
I have a 27x 1000 matrix and I want to avarage the numbers between 1-20, 21-40, 41-60 .......... 981-1000 in each row.
Could anyone help me about this ?
Many thanks
0 个评论
采纳的回答
Image Analyst
2015-11-2
If you have the Image Processing Toolbox (use "ver" to check), then you can use blockproc():
myData = rand(27,1000); % Sample data
% Define the mean function to be used with blockproc.
myMeanFunction = @(block_struct) mean(block_struct.data);
% Get the means by each 1-by-20 block.
blockMeans = blockproc(myData, [1 20], myMeanFunction)
更多回答(1 个)
Torsten
2015-11-2
average=zeros(27,50);
for i=1:27
for j=1:50
average(i,j)=mean(A(i,(20*(j-1)+1):(20*j)));
end
end
Best wishes
Torsten.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!