multiplication of certain values using logical array
11 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi all,
I have a matrix from which I have derived a logical array. What I'd like to do is multiply true values in the original matrix by -1. I can change these values to a constant value but I can't figure out how to multiply the existing value.
I should add that I'm after a vectorisation rather than loops to quicken my script.
thanks in advance,
Rachel
0 commentaires
Réponse acceptée
Amit Davidi
le 2 Fév 2012
If A is your original matrix and fltr is the derived logical array (having the same dimensions as A), than:
A(fltr) = -A(fltr);
Should do the trick.
(I think Andrei might have misunderstood your question. Or did I?...)
Plus de réponses (2)
Amit Davidi
le 2 Fév 2012
Of course, it'll change only the values where the logical array is true. Note, however, that the command
B = -A(fltr);
would not give you what you want! This will result in a column vector of the changed values.
0 commentaires
Voir également
Catégories
En savoir plus sur Feature Detection and Extraction dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!