How to make all negative values in a matrix 0?

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

1 Comment

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

Sign in to comment.

 Accepted Answer

cr
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;

More Answers (2)

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.

Categories

Asked:

on 18 Nov 2020

Edited:

cr
on 19 Nov 2020

Community Treasure Hunt

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

Start Hunting!