Replacing all elements in a row with zeros, if atleast one of the elements in the row is greater than 1

1 次查看(过去 30 天)
Good day,
Please how can I replace all elements of a row with zeros if any of the elements in the row is greater than 1.
For instance; I have a 4X3 Matrix;
A= [0.2 0.5 0.1
0.4 0.6 3.0
0.2 0.5 0.1
2.0 0.5 0.1]
Only raw 2 and row 4 contain element that is greater than 1.
so the output will be = [0.2 0.5 0.1
0.0 0.0 0.0
0.2 0.5 0.1
0.0 0.0 0.0]
Thanks in anticipation of your help

采纳的回答

James Tursa
James Tursa 2019-11-27
Another method if you want the replacement in-place:
A(any(A>1,2),:) = 0;

更多回答(1 个)

Andrei Bobrov
Andrei Bobrov 2019-11-27
编辑:Andrei Bobrov 2019-11-28
out = all(A <= 1,2).*A

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by