Hi Guys Is there a way to replace all values in a row if just one value in the row meet a condition. Given a random 5x5 matrix. my condition is, if one number in a row is equal to -3, then all values in that row must be changed to -3.
To start with I thought that i could make a for loop, and then check each row and see if it meet the condition
Thank you in advance!
-David

 Réponse acceptée

Stephen23
Stephen23 le 3 Mai 2018
Modifié(e) : Stephen23 le 3 Mai 2018
Where M is your matrix:
M(any(M==-3,2),:) = -3
For example:
>> M = randi(9,5);
>> M(4,2) = -3
M =
5 2 5 1 7
2 3 5 8 3
6 3 4 9 5
8 -3 9 7 2
5 6 8 8 9
>> M(any(M==-3,2),:) = -3
M =
5 2 5 1 7
2 3 5 8 3
6 3 4 9 5
-3 -3 -3 -3 -3
5 6 8 8 9

Plus de réponses (1)

Catégories

En savoir plus sur Loops and Conditional Statements 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