Indexing how many times is an element repeated in a matrix in another array
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Ningct12
el 19 de Nov. de 2019
Comentada: Ningct12
el 20 de Nov. de 2019
Sorry if the wording in the title doesn't make sense. I'm still a noob to MATLAB.
Let's say I have an experiment order of A = [1 2 1 2 3 2 3 3 1].
I would like to make another array counting how many times each task is repeated in A.
The expected outcome would be B = [1 1 2 2 1 3 2 3 3].
Particularly, when 1 appeared the 2nd time in A(3), B(3) = 2. When 1 appeared the 3nd time in A(9), B(9)= 3. Same applies for the other numbers.
How can I achieve this? Any help is much appreciated. Thank you!
0 comentarios
Respuesta aceptada
Erivelton Gualter
el 19 de Nov. de 2019
The following piece of code solve your problem:
arr = unique(A);
for i=1:length(arr)
n = arr(i);
B(A==n) = 1:length(find(A==n));
end
B
Next time, try to show some attempt code ;)
Más respuestas (0)
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!