Not able to get count of each elements in array itself

1 vue (au cours des 30 derniers jours)
Scott Tehelson
Scott Tehelson le 30 Juin 2020
Commenté : Scott Tehelson le 30 Juin 2020
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!

Réponse acceptée

Gaganjyoti Baishya
Gaganjyoti Baishya le 30 Juin 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.

Plus de réponses (1)

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

Catégories

En savoir plus sur Multidimensional Arrays dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by