Change specific matrix values to negatives

Hello,
I have two matrices of equal size. One contains negatives and the other does not. I want top convert the values on the positive matrix, that correspond top the negative valus on the other matrix, to negatives. i.e., if: A = [2,1,0,-1,-2,-1,0,1,2]; and B = [4,2,0,2,4,2,0,2,4];
what is the easiest way to make:
B = [4,2,0,-2,-4,-2,0,2,4];
Thanks,
Max

 Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 5 Juil 2017
Modifié(e) : Andrei Bobrov le 5 Juil 2017
B.*sign(A)
or
(1-(A < 0)*2).*B
or
B(A < 0) = -B(A < 0);

Plus de réponses (0)

Catégories

En savoir plus sur Operators and Elementary Operations dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by