mean first 10 lines and next 10 line till finish array

조회 수: 2 (최근 30일)
Siti Safwana Abd Razak
Siti Safwana Abd Razak 2021년 12월 6일
댓글: Mathieu NOE 2021년 12월 7일
i got 210338x3 table array. how to calculate mean for 10 line, then next 10 line, then next 10 line till finish my table array. i dont know how to group first 10th, next 10 and next 10.
thanks!

채택된 답변

Mathieu NOE
Mathieu NOE 2021년 12월 6일
hello
try this
%% dummy data
data = rand(210338,3); % data must be column oriented (number of rows = number of samples)
buffer = 10; % nb of samples for averaging
%% zero overlap averaging (unweighted)
[m,n] = size(data);
for ci=1:fix(m/buffer)
start_index = 1+(ci-1)*buffer;
stop_index = min(start_index+ buffer-1,m);
avg_data(ci,:) =mean(data(start_index:stop_index,:)); % size : 1 x 3
end

추가 답변 (1개)

Chunru
Chunru 2021년 12월 6일
a = rand(210338, 3);
nrows = size(a, 1)
nrows = 210338
n = 10;
nseg = floor(nrows/n)
nseg = 21033
c = squeeze(mean(reshape(a(1:n*nseg,:), n, nseg, 3)));
clast = mean(a((n*nseg+1):end,:)); % last part
whos
Name Size Bytes Class Attributes a 210338x3 5048112 double c 21033x3 504792 double clast 1x3 24 double n 1x1 8 double nrows 1x1 8 double nseg 1x1 8 double

카테고리

Help CenterFile Exchange에서 Large Files and Big Data에 대해 자세히 알아보기

제품


릴리스

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by