Find unique values in a sequence containing at least 3 elements

2 views (last 30 days)
I want to find the unique values for each sequence containing minimum 3 repeating elements in a vector. For example, consider the vector:
x = [1 2 2 3 4 4 4 5 6 6 6 6 7 7 7 8];
The output (unique values) should be:
y = [4 6 7];
How can I achieve this?

Accepted Answer

Niels
Niels on 22 Jan 2015
u = unique(x);
a = histc(x,u);
y = u(a>=3);
This should do the trick. First determine the unique values in the vector, then count the number of times they occur. Then consider only the values that occur more than 2 times.

More Answers (0)

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!