Quick method to find duplicates in a matrix?

48 visualizzazioni (ultimi 30 giorni)
Dan
Dan il 16 Lug 2014
Commentato: Dan il 16 Lug 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!

Risposta accettata

Joseph Cheng
Joseph Cheng il 16 Lug 2014
Modificato: Joseph Cheng il 16 Lug 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.

Più risposte (1)

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

Categorie

Scopri di più su Programming in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by