MATLAB: Averaging multiple matrices with the cell array

cell arrayscell2matMATLABmean

Hi Guys,
I have a cell array (C) with (1*22), inside this cell i have 22 matrices with (30*30*20).
I want to have the average of all these matrices, so the final output must be in the same dimention (30*30*20).
I have tried this code, but the output was different
for f=1:1:length(C)
for i=1:30
for j=1:20
data=cell2mat(C(f));
end
end
end

Best Answer

Try this:
Cmean = mean(cat(4,C{:}),4);
That concatenates the cells across dimension 4 and then takes the mean across dimension 4.
Related Question