How to replace some values in a matrix?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have x=16 * 16 matrix of double values. i need to figure out consecutive values of 'x' which are less than 150 and replace them with the original value plus(+) 8.
0 commentaires
Réponse acceptée
Stephen23
le 1 Mai 2017
Modifié(e) : Stephen23
le 1 Mai 2017
>> x = randi(200,16,16);
>> idx = x<150;
>> x(idx) = x(idx)+8;
Very basic MATLAB operations, such as logical indices, as introduced in the Getting Started tutorials, which are highly recommended for all beginners:
3 commentaires
Image Analyst
le 1 Mai 2017
How are you defining consecutive? MATLAB goes row by row (down rows), then over to the next column and down its rows. Is that your definition? If so, then is the last element in column 2 consecutive with the first element in column 3?
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!