Find Unique values in array
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi all,
I am trying to create a new array contains ONLY the unique values (same values but not repeated) which in the following case are 90 0 45
I used unique function, however, the function also returns the same data as in x, but in sorted order. I DO NOT want them in sorted order,
Also, I would like to obtain the index of the unique values in the x
like index=[1,2,9]
clear all;
clc;
x=[90 0 0 90 90 90 90 90 45 0 0 0];
y=unique(x)
0 commentaires
Réponse acceptée
Ameer Hamza
le 12 Mai 2020
Modifié(e) : Ameer Hamza
le 13 Mai 2020
clc;
x=[90 0 0 90 90 90 90 90 45 0 0 0];
[y, idx] = unique(x, 'stable')
output
y =
90 0 45
idx =
1
2
9
4 commentaires
Ameer Hamza
le 13 Mai 2020
Try try something like this
idx = [1 4];
for i=1:numel(idx)
z(:,:,i)=A(:,:,idx(i))
end
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!