How to compare the first column of the rows to whole matrix?
Ältere Kommentare anzeigen
I am trying to compare the first columns of rows to whole matrix, and try to find how many times each value occur in the matrix. For example, let
A = [2 4 6 1;
3 7 18 24;
4 2 6 0;
5 8 12 17;
6 2 4 0;
7 3 18 24];
I want to find how many times the row values [2 3 4 5 6 7] occur in the matrix. I can easily find it using for loop, but I don't want any loop. I am also not good at using arrayfun. Can somebody help me?
Thanks.
1 Kommentar
José-Luis
am 23 Okt. 2014
The first column of rows?!?!
Akzeptierte Antwort
Weitere Antworten (2)
Roger Stafford
am 24 Okt. 2014
Bearbeitet: Roger Stafford
am 24 Okt. 2014
C = sum(bsxfun(@eq,A(:,1),A),2)-1; % <-- Counts (not counting column 1)
1 Kommentar
Andrei Bobrov
am 24 Okt. 2014
C = sum(bsxfun(@eq,A(:,1),reshape(A,1,[])),2);
Kategorien
Mehr zu Logical finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!