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

1 次查看(过去 30 天)
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

采纳的回答

Walter Roberson
Walter Roberson 2015-5-27
RLE = diff([0 find(diff(A)~=0) length(A)]);
  2 个评论
Ali Noori
Ali Noori 2015-5-27
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 2015-5-27

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

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2015-5-27
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!

Translated by