Writing code to calculate number of ones & zeros in the logic matrix

2 views (last 30 days)
Hi all, I'd like to write code to find number of ones & number of zeros ones respectively in logic matrix (1x34) attached below: I will be so grateful if someone help me. Best Regards

Accepted Answer

Walter Roberson
Walter Roberson on 27 May 2015
RLE = diff([0 find(diff(A)~=0) length(A)]);
  2 Comments
Ali Noori
Ali Noori on 27 May 2015
It works perfectly. Can you please find the average value of zeros and ones ex: average for zeros =4+5+3+2+2/4=4 average for ones= 5+3+6+2+2/4=4.5 thanks for your help again
Ali Noori
Ali Noori on 27 May 2015

sorry, average for zeros =4+5+3+2+2/5=3.2 average for ones= 5+3+6+2+2/5=3.6

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 27 May 2015
If you have the Image Processing Toolbox, this is how you do it:
% Create sample data
A = [0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,0,0,0,1,1,1,1,1,1,0,0,1,1,0,0,1,1]
% Label the 0's.
labeled0 = bwlabel(~A)
% Count the number of 0's.
measurements0 = regionprops(labeled0, 'Area');
% Label the 1's.
labeled1 = bwlabel(A)
% Count the number of 1's.
measurements1 = regionprops(labeled1, 'Area');
% Stitch together into a single matrix.
zeroAreas = [measurements0.Area]
onesAreas = [measurements1.Area]
bothAreas = [zeroAreas;onesAreas]
% Reshape into a row vector.
finalOutput = bothAreas(:)'

Community Treasure Hunt

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

Start Hunting!