searching part of matrix in every cell of a cell array

2 views (last 30 days)
A is a cell array containing matrices with different sizes in each cell:
A={[5x4],[5x3],[5x20]}
I know, it is possible to search the cell array for a particular number (code) using cellfun.
find( cellfun(@(f) (f==code), A )
Is it possible to search just the first row of the matrices in each cell array for that code? What I was trying to do, but does not work, is:
find( cellfun(@(f) (f==code), A{:}(1,:))
I need the indices of cells which contain the code in the first row. Is there a solution without using a for loop?
  2 Comments
Matt J
Matt J on 23 Mar 2017
Edited: Matt J on 23 Mar 2017
I think you'll find that
find( cellfun(@(f) (f==code), A )
does not work for the first scenario you describe.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 23 Mar 2017
Edited: Matt J on 23 Mar 2017
find( cellfun(@(f) any(f(1,:) == code), A)

More Answers (0)

Community Treasure Hunt

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

Start Hunting!