how to check negative values are there or not in a matrix????
Ältere Kommentare anzeigen
i have a matrix a=[0.2 0.1 -0.1 0 0.9], now i want to check whether there is any negative value if yes then those element i want to make zero.
plz plz help me....
a<0 makes all greater than as 1 and other 0. but i want to make only negative values zero and other as same as they are.
2 Kommentare
Asif Newaz
am 12 Nov. 2019
u can use the 'sign' function.
An approach to show off (lol) -
a=[0.2 0.1 -0.1 0 0.9]
max(a, 0)
Akzeptierte Antwort
Weitere Antworten (2)
Thomas Richner
am 9 Sep. 2018
6 Stimmen
If you want to know if a matrix contains any negatives (but not to replace them) the use
contains_negative = any(a<0); % returns true or false
Anirban Naskar
am 11 Jun. 2014
Bearbeitet: Anirban Naskar
am 11 Jun. 2014
Hi Suchismita,
You can use something like the following:
[m n]=size(a);
for i=1:m
for j=1:n
if a(i,j)<0
disp('contains negative element');
a(i,j)=0;
end
end
end
2 Kommentare
suchismita
am 12 Jun. 2014
juveria fatima
am 24 Sep. 2018
@ Anirban nasker you are converting the negative number in matrix to positive perfectly fine
but in my case i have i have to first convert negative to postive and again i have to get back to original 'a matrix' can any help in writing the reverse function for it
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!