How to incorporate a conditional nonzero statement for multiple columns

Hey,
I have a matrix D and I would like to compare columns elements with each other with a conditional non-zero statement: if only one element in a row is > 0 then keep all zero values in that row 0 and make the nonzero value 1. In addition, if more than one element in a row is nonzero then make all elements in that row 0.
I really appreciate the help!
Many thanks!
Felix
A = [6;3;4];
B = [2;0;1];
C = [6;0;3];
D = [A,B,C]
D =
6 2 6
3 0 0
4 1 3
% desired result
E =
0 0 0
1 0 0
0 0 0

 채택된 답변

Andrei Bobrov
Andrei Bobrov 2018년 11월 20일

0 개 추천

D =[
6 2 6
3 0 0
4 1 3];
out = D > 0;
out(sum(out,2) > 1,:) = 0;

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Mathematics에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by