I have a 1x12 cell in Matlab and each element of this cell has a 3d matrix. I want to make the mean of these 3d matrices, so that I obtain a 3d matrix that has the same dimensions of each one of the 3d matrices of the cell and that is the mean of the 12 3d matrices. How can I do this operation ?
I tried to extract each cell and create a 4d matrix so that I could do mean(fourdmatrix,4)
. However, it seems not possible to create a 4d matrix.
Ideed, a code like this:
cell={threedmatrixA, threedmatrixB, ...} fourdmatrix=[]; for i=1:12 fourdmatrix(i)=cell{i}; end
does not work. How can I do it ?
One you have the data in a 4d array it's simple enough, just use mean
and supply the dimension to work over as you suggest. As @Cris notes you might run out of memory forming the 4d array (since it will copy all the data) in which case you'll want to loop over the existing arrays. But if you have enough memory this should work:
% make 12 random 3d arrays in cell array `c` for i=1:12 c{i} = rand(10, 10, 10); end % Make a 4d array: array4d = cat(4, c{:}); % Same as writing cat(4, c{1}, c{2}, c{3}, etc) m = mean(array4d, 4); % Take the mean along the 4th dimension size(m) % Show the size of the output (here should be 10,10,10)
Matlabsolutions.com provides guaranteed satisfaction with a
commitment to complete the work within time. Combined with our meticulous work ethics and extensive domain
experience, We are the ideal partner for all your homework/assignment needs. We pledge to provide 24*7 support
to dissolve all your academic doubts. We are composed of 300+ esteemed Matlab and other experts who have been
empanelled after extensive research and quality check.
Matlabsolutions.com provides undivided attention to each Matlab
assignment order with a methodical approach to solution. Our network span is not restricted to US, UK and Australia rather extends to countries like Singapore, Canada and UAE. Our Matlab assignment help services
include Image Processing Assignments, Electrical Engineering Assignments, Matlab homework help, Matlab Research Paper help, Matlab Simulink help. Get your work
done at the best price in industry.