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

2 views (last 30 days)
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)

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

Categories

Find more on Sparse Matrices in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!