0
I have a matrix, A = [745 x 678], which consists of negative and positive values. I would like to make all the negative numbers zero but am not sure how to go about doing this.
I was thinking of something like:
n = 678
for i = 1:n
A(A<0) = 0
end
I am not sure to how to apply this to every element of the matrix though. Any help would be appreciated.

 Akzeptierte Antwort

madhan ravi
madhan ravi am 10 Jun. 2019

4 Stimmen

No loops needed:
matrix(matrix <0) = 0;

Weitere Antworten (1)

pankhuri kasliwal
pankhuri kasliwal am 10 Jun. 2019

0 Stimmen

Hi,
you do not need to iterate over all the elements of a matrix to do so, you can simply do this:
m = [1 2 -1; -2 4 -7; 9 -5 1];
m(m<0) = 0 ;
this will give you
m = [1 2 0; 0 4 0; 9 0 1]

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by