Modification sélective d'éléments d'une matrice

Méthode

Nous avons vu précédemment comment afficher un ou plusieurs éléments d'une matrice. En utilisant la même syntaxe nous pouvons modifier les éléments d'une matrice:

A=[1 0 3 5; 4 8 6 0; 7 8 9 10;2 3 1 3];

Pour afficher l'élement en ligne 3 colonne 2 on utilise :

A(3,2)

Pour modifier cet élémént on fera donc :

A(3,2)=28;

On peut vérifier le résultat :

A

Modification des éléments d'une matrice

Nous pouvons voir le résultat des commandes précédentes.

ComplémentUtilisation avec la commande find

La commande find permet de rechercher des éléments vérifiant une condition logique. Par xemple pour rechercher quels sont les éléments compris plus petit que 2 ou plus grand que 9 on fera :

ind=find(A<2 | A>9);

Pour vérifier il suffit d'écrire :

A(ind)

Si on veut remplacer ces éléments par 421 on écrira :

A(ind)=421;

Commnde find et matrice

Les commandes précédentes donnent ces résultats.

RemarqueRemarque sur le résultat de find

La commande find donne comme résultat la position des élements dans une matrice vérifiant la condition logique. Si la matrice est rectangulaire alors le résultat n'est pas donné sous forme d'indices de ligne et colonne mais sous la forme d'une liste de nombres.

Une matrice est en effet une liste d'éléments ordonnés comme suit :

\(A=(a_{ij})\)

matrice de N lignes et M colonnes alors l'élément ij est en position i+(j-1)*N

Pour une matrice de 5 lignes et 4 colonnes l'ordre est alors le suivant :

\(\begin{matrix}1&6&11&16\\2&7&12&17\\3&8&13&18\\4&9&14&19\\5&10&15&20\end{matrix}\)