I need help finding the average across a 1x5 cell array

I have a 1x5 cell array, each with a 4x5 matrix. I need to average the data (in the first row, and all columns of each matrix) across all 5 cells. Any suggestions on how to approach this?

回答(1 个)

% Create some test data:
C = cell(1, 5);
for k = 1:5
C{k} = rand(4, 5);
end
M = cat(3, C{:}); % convert cell to 3-dim numerical array
s = size(M);
Mavg1 = reshape(mean(M, 1), s(2:3))
Mavg2 = reshape(mean(M, 2), s([1, 3]))
For mathematical operations a multi-dimensional numerical array is useful, while a cell array is not.

类别

帮助中心File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

编辑:

Jan
2018-5-12

Community Treasure Hunt

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

Start Hunting!

Translated by