How do I take the average of every n values in a matrix?

조회 수: 3 (최근 30일)
roberto ivan perez luna
roberto ivan perez luna 2017년 12월 2일
편집: Matt J 2017년 12월 2일
hello again, i have one a2_dap_U 17567x71x42 double value matrix; 17567=values every 30 min, 71x42 grid.
so i tried this one for the 24 hour average (48 since its every 30 min):
a2_dap_U_24=arrayfun(@(i) nanmean(a2_dap_U(i:i+48-1)),1:48:length(a2_dap_U)-48+1)';
but it gave me 365 NaN values, and i dont know how to do it, since this command line help me with individual values that i extracted from two sites within the 71x42 matrix, but it doesnt help me for the whole 17567 values for the whole matrix.
any help please ;)

답변 (1개)

Matt J
Matt J 2017년 12월 2일
편집: Matt J 2017년 12월 2일
a2_dap_U(17568,:,:)=nan; %pad to even multiple of 48
A=nanmean(reshape(a2_dap_U,48,[]));
B=reshape(A,[],71,42);

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by