How to convert A= [13;8;12;4​;8;1;13;0;​10;13;1;6;​14;13;1;14​;11;9;9;10​;10;15] to B= [3 0 0 1 0 1 0 2 2 3 1 1 4 2 1]

3 vues (au cours des 30 derniers jours)
if A= [13;8;12;4;8;1;13;0;10;13;1;6;14;13;1;14;11;9;9;10;10;15]
how can I convert A to be: B= [3 0 0 1 0 1 0 2 2 3 1 1 4 2 1].
3 in the first index of B, because "1" is repeated three times in A.
2 in the eighth index of B, because "8" is repeated two times in A.
"0" in the second index of B, because the value 2 is not exist in A and so on...

Réponses (2)

Simon Chan
Simon Chan le 8 Juil 2021
edges = 1:max(A)+1;
B = histcounts(A,edges)

Jonas
Jonas le 8 Juil 2021
Modifié(e) : Jonas le 8 Juil 2021
use histcounts with integer bin method
histcounts([13;8;12;4;8;1;13;0;10;13;1;6;14;13;1;14;11;9;9;10;10;15],'BinMethod','integers')
you forgot the number 0 in your example output

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by