How to identify array elements that occur more than once ?

16 次查看(过去 30 天)
For example D=[1 2 3 3 3 4 5 6 7 7 8]
I want to identify the elements that occur more than once.
The expected answer with respect to the above example Would be [ 3 7].
How do i do it in matlab. I can use for loop but i want to find out is there a better approach..

回答(2 个)

KSSV
KSSV 2016-12-21
编辑:KSSV 2016-12-21
Read about unique
find(hist(D,unique(D))>1)
  1 个评论
Stephen23
Stephen23 2016-12-21
This answer does not return the values as requested, e.g.:
>> D = [2 3 3 3 4 5 6 7 7 8];
>> find(hist(D,unique(D))>1)
ans =
2 6
See my answer for the correct code.

请先登录,再进行评论。


Stephen23
Stephen23 2016-12-21
>> U = unique(D);
>> U(1<histc(D,unique(D)))
ans =
3 7

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by