if else
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
i need to compare s=[0 1] with I=[0 0;1 1;1 0;0 1;1 0;0 0; 1 0; 1 1; 0 0;.............................90bits] i want to use counter .can any one help me
0 Kommentare
Akzeptierte Antwort
Paulo Silva
am 24 Jun. 2011
s=[0 1];
I=[0 0;1 1;1 0;0 1;1 0;0 0; 1 0; 1 1; 0 0]
counter=0;
for n=1:size(I,1)
if I(n,:)==s
counter=counter+1;
else
%nothing to be done, just included the else for fun :)
end
end
counter
Alternative just for fun
s=[0 1];
I=[0 0;1 1;1 0;0 1;1 0;0 0; 1 0; 1 1; 0 0]
counter=0;
for n=1:size(I,1)
if I(n,:)~=s
%nothing to be done here :)
else
counter=counter+1;
end
end
counter
2 Kommentare
Weitere Antworten (1)
Sean de Wolski
am 24 Jun. 2011
idx = ismember(I,s,'rows'); %row indices of matches
nmatches = sum(idx); %number of matches
row_indices = find(idx); %row numbers of matches
A few of the things you can do...
3 Kommentare
Sean de Wolski
am 24 Jun. 2011
Why? nmatches will be the same result as a counted (like in Paulo's below example)
I guess this must be homework...
Paulo Silva
am 24 Jun. 2011
I was almost commenting the same you did :) your code is the best way to do it unless it's really homework.
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!