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]

 Akzeptierte Antwort

Wayne King
Wayne King am 27 Sep. 2013
Bearbeitet: Wayne King am 27 Sep. 2013

0 Stimmen

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);

Weitere Antworten (1)

Zaki
Zaki am 27 Sep. 2013

0 Stimmen

it's very helpful thank you very much :)

Kategorien

Mehr zu MATLAB finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 27 Sep. 2013

Kommentiert:

am 27 Sep. 2013

Community Treasure Hunt

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

Start Hunting!

Translated by