How can I count the occurrences of each element in a matrix in MATLAB?
12 views (last 30 days)
Show older comments
Tracy Campbell
on 25 May 2017
Answered: Geoff Hayes
on 25 May 2017
I'm trying to figure out how to count how often certain numbers appear in a specific column of my matrix (each number is coded for a different category). Very new to MATLAB, any help is appreciated!
0 Comments
Accepted Answer
Geoff Hayes
on 25 May 2017
Tracy - one way is to use ismemeber (though this can be "slow"). For example, suppose your column array is constructed as
c = randi(15, 25, 1); % so generate 25 random numbers from 1 to 15
m = [10 15]; % m is the set of integers that you trying to match on
sum(ismember(c,m))
Since ismember(c,m) returns a logical array of ones (indicating a match in m) and zeros (indicating no match) then we can sum up all the ones to determine how many elements of c are in m.
Note that the above is only valid for integers.
0 Comments
More Answers (0)
See Also
Categories
Find more on Logical 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!