How to create a limited frequent values in array?

Is there anyone know how to create limited frequent values in array? Because, what I found is only the most frequent. I'd like to make it like two or three times appear. For example this problem :
Return a list of all values (sorted smallest to largest) that appear exactly three times in the input vector x. So
if
x = [1 2 5 2 2 7 8 3 3 1 3 8 8 8]
then
y = [2 3]

 Réponse acceptée

Wayne King
Wayne King le 27 Sep 2013
Modifié(e) : Wayne King le 27 Sep 2013
You can use hist() and unique()
x = [1 2 5 2 2 7 8 3 3 1 3 8 8 8];
[N,bins] = hist(x,unique(x));
bins(N==3)
Of course you can save that output in the vector, y
y = bins(N==3);

Plus de réponses (1)

Zaki
Zaki le 27 Sep 2013

0 votes

it's very helpful thank you very much :)

1 commentaire

Wayne King
Wayne King le 27 Sep 2013
Can you accept the answer if it answered your question?

Connectez-vous pour commenter.

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by