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)

回答 (2 件)

madhan ravi
madhan ravi 2019 年 1 月 16 日

0 投票

unique(arr)

1 件のコメント

aya qassim
aya qassim 2019 年 1 月 16 日
thank you,
but If I want to continue my code, do you know how can I can do it?
Guillaume
Guillaume 2019 年 1 月 16 日

0 投票

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

この質問は閉じられています。

タグ

質問済み:

2019 年 1 月 16 日

閉鎖済み:

2021 年 8 月 20 日

Community Treasure Hunt

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

Start Hunting!

Translated by