# ismember for cell arrays of different sizes

6 views (last 30 days)
Sean McWeeny on 6 Oct 2022
Answered: Fangjun Jiang on 6 Oct 2022
I have a cell array with different sized cells of class double as follows:
bin_list = {[1], [1,7], [1,7], [1,7,9], [2,8], [3], [1,7]}';
I would like to count all the cells that have a 1 in them (eventually nest it within a for loop such that I count all the cells that have a 2,3, and n in them)

Davide Masiello on 6 Oct 2022
bin_list = {[1], [1,7], [1,7], [1,7,9], [2,8], [3], [1,7]}'
bin_list = 7×1 cell array
{[ 1]} {[ 1 7]} {[ 1 7]} {[1 7 9]} {[ 2 8]} {[ 3]} {[ 1 7]}
cellfun(@(x)ismember(1,x),bin_list)
ans = 7×1 logical array
1 1 1 1 0 0 1

Fangjun Jiang on 6 Oct 2022
bin_list = {[1], [1,7], [1,7], [1,7,9], [2,8], [3], [1,7]}';
Const=1;
f=@(x) ismember(Const,x);
cellfun(f,bin_list)
ans = 7×1 logical array
1 1 1 1 0 0 1

### Categories

Find more on Cell Arrays in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by