count how many times the element occur in a list

1 view (last 30 days)
like i have the following code for the above:
function count
clc;
a=[1 2 3 3 4 5 5 5 5 5 6 6 6 6];
u=unique(a);
for n=1:length(u)
answer(n,:)=[u(n) length(find(a==u(n)))];
end
disp(answer);
end
output is:
1 1
2 1
3 2
4 1
5 5
6 4
i want to find the maximum value from the list (1 1 2 1 5 4) i.e from the 2nd column of the output...
2nd column of output displays the number of times the given element occurs.
can anyone tell me how to solve it?

Accepted Answer

Walter Roberson
Walter Roberson on 13 Mar 2013
[maxcount, maxidx] = max(answer(:,2));
answer(maxidx,1), 'occurred', maxcount

More Answers (1)

Image Analyst
Image Analyst on 13 Mar 2013
That's just the histogram:
% Create sample data.
a=[1 2 3 3 4 5 5 5 5 5 6 6 6 6 9 9 11 11 18]
% Get the histogram with bins every 1 wide from 1 to the max value of a.
numberOfBins = max(a)-min(a)+1 % Assumes integer a values.
counts = hist(a, numberOfBins)
% Find out where the histogram is maximum.
[maxValue, maxIndex] = max(counts)
% Print out information to the command line.
fprintf('The most frequently occurring number is %d, which occurs %d times.\n',...
maxIndex, maxValue);
In the command window:
a =
1 2 3 3 4 5 5 5 5 5 6 6 6 6 9 9 11 11 18
numberOfBins =
18
counts =
1 1 2 1 5 4 0 0 2 0 2 0 0 0 0 0 0 1
maxValue =
5
maxIndex =
5
The most frequently occurring number is 5, which occurs 5 times.
  2 Comments
pammy
pammy on 14 Mar 2013
Edited: pammy on 14 Mar 2013
shows error in line 6
error using hist
Too many input arguments.
Error in hist (line 6)
counts = hist(a,numberOfBins)
Image Analyst
Image Analyst on 14 Mar 2013
You probably redefined hist to be a variable in your program, thus blowing away the built-in function. What do these say:
whos hist
which -all hist

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!