how to release indexes in an array

I have the array
arr=[-9,6,-2,0,4,98,2,-5,0,-9,4,3,1,1,-5]
I have wrote this code and found out how many time each element is in the array and the places of the numbers.
how can I make the numbers that appear more than once un the array appear just one time
A=arr;
t=length(A);
A1=repmat(A,t,1);
A2=A';
c=(A1==A2);
r=sum(c);
e=find(r~=1);
disp(e)

Answers (2)

unique(arr)

1 Comment

thank you,
but If I want to continue my code, do you know how can I can do it?
A much simpler way to obtain your r (and e):
[uvals, ~, id] = unique(arr);
r = accumarray(id, 1);
e = find(r > 1);
which also gives you the unique values and answers your how can I make the numbers that appear more than once un the array appear just one time

This question is closed.

Asked:

on 16 Jan 2019

Closed:

on 20 Aug 2021

Community Treasure Hunt

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

Start Hunting!