Find specific cell in another cells

4 views (last 30 days)
Hi everyone,
Attachment is my file.
I would like to know the locations of this cells containes a specific cell-{21 31 1}
I try to use like below:
Match = {21 31 1};
CorrectMatch = find (cellfun(@(x) isequal (x,Match), condition(1,:)));
but it return 0.
Could any one help me?
  2 Comments
Ting-Yu Chueh
Ting-Yu Chueh on 21 Apr 2019
Edited: Ting-Yu Chueh on 21 Apr 2019
Thnaks. That's what I asked before.
In that case,
condition = { {21 31 1}, {22 32 2}, {21 31 }, {22 32 1} };
% Define what we want to find
match = {21 31 1};
% Instantiate output vector of where matches were found.
CorrectMatch = find (cellfun(@(x) isequal (x,match), condition(1,:)));
It work out.
But, in my real data, it failed. I don't know what problems in this method or data.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 21 Apr 2019
match = {21 31 1}
does not exist in your actual condition variable. Your actual condition is a cell array of cell arrays of character vectors such as {'21' '31' '1'}
match = {21 31 1};
mm = cell2mat(match); %eg [21 31 1]
CorrectMatch = find( cellfun(@(c) isequal(str2double(c), mm),condition) );

More Answers (0)

Categories

Find more on Bounding Regions in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!