Counting distinct elements in a vector?

ok lets say i have a vector A = (1 1 2 2 3 4 4 4 4 5 7 7 7) the original A vector was related to actual time, hence why its increasing....i've already used the ceil function to bucket the original elements into distinct minutes... now i want to count up the elements that occur in distinct minutes.. so, for the example above- I expect a final result of 6....i cant figure out how to come up with that code.. please help

 Accepted Answer

Matt J
Matt J on 8 May 2021
Edited: Matt J on 8 May 2021
numel(unique(A))
or
max(findgroups(A))

4 Comments

James Bakers' comment moved here
thanks perfect
You are very welcome, but pleae Accept-click the answer to indicate that it resolved your question.
matt,
hopefully, you don't mind a follow up question? given my A vector above in the oroginal question, what woule by the syntax to create a 2nd vector? this 2nd vector would have the values in it as follows B = (2 2 1 4 5 3). this represents the count of each unique value in the original A vector such as 2 1's, 2's, 1 3, 4 4's, 1 5 and 3 7's.and so on
whoops he B vector should be (2 2 1 4 1 3)... not (2 2 1 4 5 3)... doh!

Sign in to comment.

More Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Products

Release

R2021a

Community Treasure Hunt

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

Start Hunting!