How to count number of specific value?
    4 views (last 30 days)
  
       Show older comments
    
    Justyna Slawska
 on 15 Dec 2016
  
    
    
    
    
    Commented: Justyna Slawska
 on 19 Dec 2016
            I have a matrix and I'm trying to count the number of a specific value in rows (i.e. < 4 )
for example 5 2 3 8 7 1 2 2 3
nnz( A(1,:) < 4); --> 6
but I want sth like this 2 and 4
0 Comments
Accepted Answer
  Image Analyst
      
      
 on 15 Dec 2016
        If you have the Image Processing Toolbox, use bwlabel and regionprops:
A = [5 2 3 8 7 1 2 2 3]
[labeledA, numRegions] = bwlabel(A < 4)
% Get the size of the regions.
props = regionprops(labeledA, 'Area')
elementCounts = [props.Area]
Run the demo and you'll see this in the command window:
A =
     5     2     3     8     7     1     2     2     3
labeledA =
     0     1     1     0     0     2     2     2     2
numRegions =
     2
props = 
  2×1 struct array with fields:
    Area
elementCounts =
     2     4
More Answers (1)
  Geoff Hayes
      
      
 on 15 Dec 2016
        Justyna - if
 data = [5 2 3 8 7 1 2 2 3]
then you can use length and https://www.mathworks.com/help/matlab/ref/find.html to determine the number of elements less than four
 length(find(data<4))
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

