Not able to get count of each elements in array itself

1 visualizzazione (ultimi 30 giorni)
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!

Risposta accettata

Gaganjyoti Baishya
Gaganjyoti Baishya il 30 Giu 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.

Più risposte (1)

madhan ravi
madhan ravi il 30 Giu 2020
[~, ~, c] = unique(x);
v = accumarray(c, 1);
Wanted = v(c)

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by