compare char (and empty elements) present in two cells
2 ビュー (過去 30 日間)
古いコメントを表示
Hi! I need to compare char (and empty elements) present in two cells. I made this code which works but it gives me an 'error' when it compares two empty cell elements (position [3,1] in 'cell_1' and 'cell_2'). In this case it returns 0 (false), i.e. they are not identical. How can I solve it?
cell_1 = importdata("cell_1.mat");
cell_2 = importdata("cell_2.mat");
row = height(cell_1);
column = width(cell_1);
siz = [row,column];
matrix_check = cell(siz);
for X = 1:row
for Y = 1:column
A = cell_1{X,Y};
B = cell_2{X,Y};
% if A == B
%
% tf = logical(1);
%
% else
tf = strcmp(A,B); % returns 1 (true) if the two are identical and 0 (false) otherwise
% end
matrix_check{X,Y} = tf;
end
end
1 件のコメント
Bruno Luong
2023 年 7 月 26 日
編集済み: Bruno Luong
2023 年 7 月 26 日
matrix_check = cell(siz);
You seem to have a bad habit of abusing cell storage for no apparent reason.
採用された回答
Bruno Luong
2023 年 7 月 26 日
replace the problematic command with
tf = strcmp(char(A),char(B));
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrices and Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!