How can I count the occurrences of each element in a column vector and store them in a vector of the same dimension as the original one?

1 view (last 30 days)
Hi, I have a vector A mx1 and I want to create a vector B mx1 reporting the number of occurrences of each element in A, e.g. if
A=[1;2;2;3;4;2;5;6;7;8;8];
then
B=[1;3;3;1;1;3;1;1;1;2;2];
I prefer not to use loops because actual vectors have very high dimensions.

Accepted Answer

Roger Stafford
Roger Stafford on 29 Nov 2013
[c,ix] = histc(A,unique(A));
B = c(ix);

More Answers (1)

dpb
dpb on 29 Nov 2013
N=histc(A,unique(A));
B=N(A);

Categories

Find more on Matrices and 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!