How to compare two rows in a cell {n x 1}
Mostra commenti meno recenti
Is there any way to compare two rows in a cell with {nx1} dimensions. Help me!
1 Commento
Patrik Ek
il 15 Gen 2014
what is the data type of the content in the cell?
Risposte (4)
dpb
il 15 Gen 2014
For what definition of compare?
all(x{n,:}==x{m,:})
maybe for n~=m, <N=length(x)?
David Sanchez
il 15 Gen 2014
M = rand(10,1);
C = mat2cell(M,ones(10,1),1); % 10x1 cell
a = C{1}; % content of first cell, a is not a cell, it is a double
b = C{2};
if a == b
disp('they are equal');
else
disp('not equal');
end
% You can do it with no intermediate variables too
if C{3} == C{4}
disp('they are equal');
else
disp('not equal');
end
1 Commento
Jos (10584)
il 15 Gen 2014
This will error when C{3} and C{4} are of different classes, lengths, etc ..
Jos (10584)
il 15 Gen 2014
To see if the elements of a cell are identical, use isequal
C = {1:4 ; 1:2, 1:4}
isequal(C{1},C{2})
isequal(C{1},C{3})
Note that the expression
C{1}==C{2}
will throw an error.
Azzi Abdelmalek
il 15 Gen 2014
Modificato: Azzi Abdelmalek
il 15 Gen 2014
a={11 2 0 5 2 8 8 1}'
b={1 25 3 6 0 3 12 2}'
s=sign([a{:}]-[b{:}])% if s=-1, a<b, if s=1, a>b, if s=0, a=b
Categorie
Scopri di più su Structures in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!