Count the number of times a value occurs in a specific of an array
330 views (last 30 days)
Show older comments
Tyler
on 17 Jul 2014
Commented: KARANAM ANILBABU
on 10 Feb 2019
Given a array, is there any way to count the number of times a value occurs within a specific row of that array?
For example, if I have a array:
A=[1,2,5,2,3,4,2; 4,2,1,5,3,2,3; 1,4,2,3,2,2,1];
I want to know how many times the value '2' occurs in the second row
Thanks
0 Comments
Accepted Answer
Azzi Abdelmalek
on 17 Jul 2014
Edited: Azzi Abdelmalek
on 17 Jul 2014
A=[1,2,5,2,3,4,2; 4,2,1,5,3,2,3; 1,4,2,3,2,2,1]
sum(A(2,:)==2)
%or
nnz(A(2,:)==2)
2 Comments
More Answers (2)
Image Analyst
on 17 Jul 2014
In general, you can use histc() to find the counts for all of the numbers in one shot:
A=[1,2,5,2,3,4,2; 4,2,1,5,3,2,3; 1,4,2,3,2,2,1];
edges = unique(A)
counts = histc(A(:), edges)
In the command window:
edges =
1
2
3
4
5
counts =
4
8
4
3
2
Geoff Hayes
on 17 Jul 2014
Try the following to find the number of times '2' occurs in the second row
length(find(A(2,:)==2))
1 Comment
Matz Johansson Bergström
on 17 Jul 2014
or the shorter and more to the point
sum( A(2,:)==2 )
See Also
Categories
Find more on Resizing and Reshaping Matrices 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!