MATLAB: How to extract cell element from a multi-dimensional cell

cellcellfunextract

Hi all,
I have a multi-dimensional cell like this:
size(respPreStore)
ans =
1 2 5 2
where each cell element is a 1*3 cell:
respPreStore{1, 1, 1, 1}
ans =
[12x2 double] [2x2 double] [4x2 double]
Now I only want all the third part in the cell, which is the 4*2 double, and store them in another cell. I tried to do this:
respPreStore{:, :, :, :}(1, 3)
MATLAB gives me error:
Expected one output from a curly brace or dot indexing expression, but there were 20 results.
Can anyone tell me how to extract these?

Best Answer

cellfun({@(c)c(1,3),respPreStore)
or
cellfun({@(c)c{1,3},respPreStore,'UniformOutput',false)