MATLAB: How to count the occurrences of each element in a column vector and store them in a vector of the same dimension as the original one

matricesmatrixmatrix arraymatrix manipulation

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.

Best Answer

[c,ix] = histc(A,unique(A));
B = c(ix);