# Find the equality of each value in the vector and cell array

조회 수: 1 (최근 30일)
NA . 2020년 11월 9일
댓글: NA . 2020년 11월 10일
I have
A = {1;[];1;[]};
B = [1;4;10;4];
I want to check equality of each row in the cell to the each row in the array and find the index. I use this code, but it is not correct.
temp = zeros(length(B),1);
for i=1:length(B)
if isempty(A{i})==0
temp(i) = find(isequal(A{i},B(i)));
else
temp(i) = 0;
end
end
result should be
temp =[1;0;0;0]
##### 댓글 수: 1표시 없음숨기기 없음
Sindar 2020년 11월 9일

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

### 채택된 답변

Sindar 2020년 11월 9일
% better test data
A = {1;[];1;[1 4];3};
B = [1;4;10;4;3];
temp = zeros(length(B),1);
for i=1:length(B)
% isequal handles empty cells, cells with multiple elements, non-numeric contents, etc.
if isequal(A{i},B(i))
temp(i)=i;
end
end
temp
temp =
1
0
0
0
5
NA 2020년 11월 10일
Thanks.

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

### 카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

### Community Treasure Hunt

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

Start Hunting!