How can i find the position of same elements in matlab......
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
For Example :
x=[1 1 1 2 2 3 3 5 5 5 7 7 7]
result =
1 1 3
2 4 5
3 6 7
5 8 10
7 11 13
Regards.......
I try something like this, ('works')but is really slow
ind=unique(x)
for i = 1 : length(ind);
[z] =find(x==ind(i))
limit(i,:)=[z(1) z(end)]
end
0 commentaires
Réponse acceptée
Andrei Bobrov
le 28 Août 2013
Modifié(e) : Andrei Bobrov
le 28 Août 2013
[a,b1] = unique(x,'first');
[a,b2] = unique(x,'last');
result = [a(:),b1,b2];
or
ii = [find([true;diff(x(:))~=0]);numel(x)+1];
result=[x(ii(1:end-1))',ii(1:end-1),ii(2:end)-1];
Plus de réponses (1)
Voir également
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!