unique occurance table from array

1 view (last 30 days)
I would like to be able to return the count of occurences of each element in a vector.
For example if I have a vector:
x=[10 25 4 10 9 4 4]
I expect the result to be
10 2
25 1
4 3
9 1

Accepted Answer

Star Strider
Star Strider on 4 Mar 2015
Use the hist function:
x=[10 25 4 10 9 4 4];
ux = unique(x);
counts = hist(x, ux);
result = [ux' counts']
  4 Comments
Image Analyst
Image Analyst on 4 Mar 2015
Also learn about its friends like histc() and imhist(). The histogram is like the PDF (probability distribution function), and related to that is the CDF, cumulative distribution function which you can get from passing the counts into cumsum(). By the way, hist() is now deprecated - they tell you to use histogram() instead.
Star Strider
Star Strider on 4 Mar 2015
Note that Rahul Shelar is using Octave.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!