sum logical 1's independently for each column

8 visualizaciones (últimos 30 días)
Michael Angeles
Michael Angeles el 11 de Feb. de 2022
Respondida: Michael Angeles el 14 de Feb. de 2022
I've attached a sample data from excel.
how can I create a "for loop" to sum each column and give me print out total for each column.
I also need to compare the "length" of the column to the sum of the logical 1's in that column then print out a pass or fail for each column tested.
example:
1 1 1 1
1 1 1 1
1 1 1 0
1 1 1 1
-----------sum
first column = 4 ==length(column) = pass
fourth column = 3 == lenght(column = fail

Respuesta aceptada

DGM
DGM el 12 de Feb. de 2022
Editada: DGM el 13 de Feb. de 2022
If the inputs are integer-valued, just use all()
A = randi([0 1],5)
A = 5×5
0 0 1 1 0 1 1 1 1 0 1 0 0 1 1 0 0 0 1 0 0 0 0 1 1
isfull = all(A,1)
isfull = 1×5 logical array
0 0 0 1 0
% if you really need text output for some reason
flmap = {'fail','pass'};
fulllabels = flmap(isfull+1)
fulllabels = 1×5 cell array
{'fail'} {'fail'} {'fail'} {'pass'} {'fail'}
  1 comentario
Michael Angeles
Michael Angeles el 13 de Feb. de 2022
Thanks DGM, I will try this one if it fits the output that we are looking for.

Iniciar sesión para comentar.

Más respuestas (2)

David Hill
David Hill el 12 de Feb. de 2022
No loop is needed.
r=readmatrix('logicalDataCount.xlsx');
s=sum(r);
l=s==size(r,1);
  10 comentarios
David Hill
David Hill el 13 de Feb. de 2022
The below code is completely flexible (does not depend on the size of r)
s=sum(r);
allPassed = (numPasses == size(r, 1));
You are really not understanding, the logical array above tells you every column that is passed (1) or failed (0). Converting the logical array to 'pass' or 'fail' is trivial.
Michael Angeles
Michael Angeles el 13 de Feb. de 2022
Hi David,
Thanks...Maybe I don't understand...The reason why I want each column to print out pass or fail as part of the output message is to inform the operator immediately that the column checked for a certain message passed or failed. This allows the operator to re-run the test.

Iniciar sesión para comentar.


Michael Angeles
Michael Angeles el 14 de Feb. de 2022
Thank you Everyone!!

Categorías

Más información sobre MATLAB Code Analysis en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by