how to check negative values are there or not in a matrix????
261 次查看(过去 30 天)
显示 更早的评论
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.
采纳的回答
Mischa Kim
2014-6-11
suchismita, use
a(a<0) = 0;
3 个评论
juveria fatima
2018-9-24
@ misha kim after making the negative integer to zero in matrix i want to get back to the a as originally with negative integers ,how do i do it?
KEYUR BORAD
2021-2-25
Thanks @Mischa Kim this syntax helped me to find if a vector contains both neg and pos value or not!!
更多回答(2 个)
Thomas Richner
2018-9-9
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
0 个评论
Anirban Naskar
2014-6-11
编辑:Anirban Naskar
2014-6-11
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 个评论
juveria fatima
2018-9-24
@ 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
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!