Increase counter for each element in array
2 views (last 30 days)
Show older comments
Dario Walter
on 17 Jun 2020
Commented: Dario Walter
on 18 Jun 2020
Hey,
given A = [1 1 3 4 5 6 6 7 7 7]. How could I return the sequence B =[1 2 1 1 1 1 2 1 2 3] such that each duplicate is counted and B is the same size as A?
I appreciate your help!
0 Comments
Accepted Answer
madhan ravi
on 17 Jun 2020
ix = A(:) == unique(A);
B = nonzeros(cumsum(ix) .* ix)
6 Comments
madhan ravi
on 18 Jun 2020
I knew you would come up with that question. That’s why you should experiment with 'stable' option in unique function.
More Answers (0)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!