Calculating mean of different ranges in a Table

10 ビュー (過去 30 日間)
Tim Podlogar
Tim Podlogar 2020 年 12 月 26 日
編集済み: Ameer Hamza 2020 年 12 月 26 日
Let's say I have a table with n rows and z columns. Columns represent different variables and rows each time point. Now I would like to calculate a mean for each variable over specific ranges of n (e.g. continuously for rows 1:300:end). Could you please help? I am kind of lost...


Ameer Hamza
Ameer Hamza 2020 年 12 月 26 日
編集済み: Ameer Hamza 2020 年 12 月 26 日
There are several ways to do this in MATLAB. Following shows one option
M = rand(900, 10);
C = mat2cell(M, 300*ones(size(M,1)/300,1), size(M,2));
M_mean = cell2mat(cellfun(@mean, C, 'uni', 0));
or this
M_mean = squeeze(mean(reshape(M, 300, size(M,1)/300, [])))

その他の回答 (0 件)


Find more on Loops and Conditional Statements in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by