Not able to get count of each elements in array itself

1 Ansicht (letzte 30 Tage)
I am having this array..x=[ 1 2 3 1 2]
Now I want to replace it with count of the corresponding elements..here x should get modified to x=[2 2 1 2 2]
By using hist(x, unique(x)) I am able to do it but it gives the count for unique elements. I want the result to have the number of elements.
please help!

Akzeptierte Antwort

Gaganjyoti Baishya
Gaganjyoti Baishya am 30 Jun. 2020
Hi Scott,
Instead of using the histc function, you can use the grouptransform function to get the count of all elements int the array.
x = [1 2 3 1 2];
x = [1 2 3 1 2]';
x = grouptransform(x,x,@numel);
x contains the required array.

Weitere Antworten (1)

madhan ravi
madhan ravi am 30 Jun. 2020
[~, ~, c] = unique(x);
v = accumarray(c, 1);
Wanted = v(c)

Kategorien

Mehr zu Multidimensional Arrays finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by