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

Ting-Yu Chueh
Ting-Yu Chueh 2019년 4월 21일
편집: Ting-Yu Chueh 2019년 4월 21일
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.

댓글을 달려면 로그인하십시오.

 채택된 답변

Walter Roberson
Walter Roberson 2019년 4월 21일

1 개 추천

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) );

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Bounding Regions에 대해 자세히 알아보기

태그

질문:

2019년 4월 21일

편집:

2019년 4월 21일

Community Treasure Hunt

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

Start Hunting!

Translated by