How can fix this error ?
1 回表示 (過去 30 日間)
古いコメントを表示
we have run this code and we have obtained this error "
Operator '==' is not supported for operands of type 'cell'.
names = {'1' '2' '3' '4' '5' '6' '7' '8' 'A' 'B' 'C'};
A1=[1 0 0 0 5 0 0 5 0 0 0; ...
0 1 0 0 0 0 5 5 0 0 0; ...
0 0 1 10 5 0 0 0 0 0 0;...
0 0 10 1 0 0 3 0 0 0 0;...
5 0 5 0 1 0 0 0 1 0 0; ...
0 0 0 0 0 1 0 5 0 1 0;...
0 5 0 3 0 0 1 0 0 0 1;...
5 5 0 0 0 5 0 1 0 0 0;...
0 0 0 0 1 0 0 0 1 0 0;...
0 0 0 0 0 1 0 0 0 1 0;... 0 0 0 0 0 0 1 0 0 0 1];
num_cars = zeros(3,3); % initialize matrix to store number of cars passing
for i=1:3 % loop through rows of adjacency matrix
for j=1:3 % loop through columns of adjacency matrix
if i~=j % ignore diagonal entries (no cars can pass from a node to itself)
num_cars(i,j) = sum(names(A1(i,:)~=0)==names(A1(j,:)~=0)); % count number of cars passing between nodes i and j
end
end
end
This is error "
Operator '==' is not supported for operands of type 'cell'
0 件のコメント
回答 (1 件)
Nathan Hardenberg
2023 年 5 月 25 日
編集済み: Nathan Hardenberg
2023 年 6 月 5 日
This error occurs when you want to compare to cells, which you can't do. What you probably want is to compare the contents of the cells. For this put the corresponding index after the cell:
X = {'a', 'b'};
Y = {'a', 'c'};
X{1} == Y{1} % compare 'a' to 'a' => works
X{2} == Y{2} % compare 'b' to 'c' => works
X == Y % this throws the error
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Operating on Diagonal Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!