cells: How to take Mean over same-indexed elements across Cells?

I have a cell array of 53 different (40,000 x 2000) sparse matrices. I need to take the mean over the third dimension, so that for example element (2,5) is averaged across the 53 cells. This should yield a single (33,000 x 2016) output. I think there ought to be a way to do this with cellfun(), but I am not able to write a function that works across cells on the same within-cell indices.

Answers (1)

A = arrayfun(@(x)randi(20,5 ,9),(1:4)','un',0); % your cell array
out = mean(cat(3,A{:}),3);

Categories

Products

Asked:

on 28 Apr 2014

Answered:

on 28 Apr 2014

Community Treasure Hunt

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

Start Hunting!