Quick method to find duplicates in a matrix?

46 Ansichten (letzte 30 Tage)
Dan
Dan am 16 Jul. 2014
Kommentiert: Dan am 16 Jul. 2014
Hi guys,
Does anybody know a quick way of checking to see which elements of a matrix are duplicates?
Such as:
a = [1,2,3,4,5,5,1,6,7];
Can we have matlab return the indices of all 1's and 5's or return: 1, 5
Thanks!
  1 Kommentar
José-Luis
José-Luis am 16 Jul. 2014
What is an element is repeated more than two times?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Joseph Cheng
Joseph Cheng am 16 Jul. 2014
Bearbeitet: Joseph Cheng am 16 Jul. 2014
You can try:
[uniqueA i j] = unique(A,'first');
indexToDupes = find(not(ismember(1:numel(A),i)))
There may be some parameters in the unique() function to get exactly what you desire but i don't remember it off hand.

Weitere Antworten (1)

Azzi Abdelmalek
Azzi Abdelmalek am 16 Jul. 2014
Bearbeitet: Azzi Abdelmalek am 16 Jul. 2014
a = [1,2,3,4,5,5,1,6,9];
[ii,jj,kk]=unique(a)
out=ii(histc(kk,1:numel(ii))>1)

Kategorien

Mehr zu Programming 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!

Translated by