# How to make all negative values in a matrix 0?

42 views (last 30 days)
Pleuni Kirch on 18 Nov 2020
Edited: cr on 19 Nov 2020
for i= 1: size(A,1)
if A (i, 2) <= 0
DataNew(i,2) = 0
This is what I have now, but there are still negative values in my DataNew matrix
Pleuni Kirch on 18 Nov 2020
I am sorry I dont know how to change my question, but I only want to make the negative values of a certain column 0. Not all negative values in the matrix

cr on 18 Nov 2020
Edited: cr on 19 Nov 2020
%% Set all negative elements to 0
A(A<0) = 0;
%% Set second column elements to 0
col = 2;
a(a(:,col)<0,col) = 0;
madhan ravi on 18 Nov 2020
A(A(:, 2) < 0 , 2) = 0

Walter Roberson on 18 Nov 2020
A(:, 2) = max(0, A(:, 2))

Andrew Flewellen-Gore on 18 Nov 2020
To set set negative values in a certain column of matrix "A" to 0, you can do this:
For this example we assume A is a 2-D number matrix and that we are getting rid of negative values in the 2nd column.
>>A(:,2) = max( A(:,2), 0 )
This line of code replaces each negative number in the second collumn with 0. Each positive number in the second collumn will stay the same.