Accéder au contenu principal

Tutoriel sur les matrices en R

Découvrez tout sur les matrices en R : nommage des lignes et colonnes, accès aux éléments, et opérations comme l’addition, la soustraction, la multiplication et la division.
Actualisé 19 sept. 2026  · 7 min lire

Explorer avec l’IA

ChatGPTClaudePerplexity

Les matrices sont des objets dont les éléments sont organisés dans une structure bidimensionnelle. Elles contiennent le plus souvent des valeurs numériques pour réaliser diverses opérations.

Par exemple, observons la matrice ci-dessous.

      [,1] [,2] [,3]
[1,]    5    6    7
[2,]    8    9   10
[3,]   11   12   13

La matrice ci-dessus comporte 3 lignes et 3 colonnes.

En R, une matrice peut être créée avec la fonction "matrix()".

La syntaxe d’une matrice en R s’écrit ainsi :

matrix(value, nrow, ncol, byrow, dimnames)

Les paramètres de la fonction sont définis comme suit :

  1. value : indique le vecteur d’entrée, chaque valeur correspondant à un élément de la matrice.
  2. nrow : définit le nombre de lignes de la matrice.
  3. ncol : définit le nombre de colonnes de la matrice.
  4. byrow : booléen TRUE ou FALSE. Si TRUE, les éléments sont remplis par ligne ; si FALSE, le remplissage se fait par colonne.
  5. dimnames : définit les noms attribués aux lignes et aux colonnes de la matrice.

Voyons un exemple ci-dessous où « mat » est le nom d’une matrice dont le vecteur d’entrée c contient les valeurs 8, 4, 5, 6, 7, 9. Elle comporte également un nombre de lignes, « nrow », égal à 2 et de colonnes, « ncol », égal à 3, ce qui donne une dimension 2 × 3. Les éléments de la matrice sont remplis par ligne, c’est-à-dire que les valeurs du vecteur sont inscrites ligne par ligne.

mat = matrix(c(8,4,5,6,7,9),nrow = 2, ncol = 3,byrow = TRUE)
print(mat)

La sortie du code ci-dessus est affichée ci-dessous : on y voit trois colonnes et deux lignes, remplies ligne par ligne.

      [,1]  [,2] [,3]
[1,]    8    4    5
[2,]    6    7    9

Nommer les lignes et les colonnes

Créons une matrice contenant les éléments de 1 à 9, avec 3 lignes. Les lignes et colonnes sont nommées à l’aide de vecteurs allant de r1 à r3 et de c1 à c3.

mat <- matrix(1:9,  nrow = 3,dimnames = list(c("r1","r2","r3"), c("c1","c2","c3")))
mat
    c1    c2    c3
r1    1    4    7
r2    2    5    8
r3    3    6    9

La sortie ci-dessus montre que les éléments de 1 à 9 sont remplis par colonne. Les lignes et les colonnes sont étiquetées de r1 à r3 et de c1 à c3.

Accéder aux éléments d’une matrice

La matrice ci-dessous, nommée « mat », comporte 3 lignes et 3 colonnes.

    c1    c2    c3
r1    1    4    7
r2    2    5    8
r3    3    6    9

Pour accéder individuellement aux éléments d’une matrice, indiquez le nom de la matrice suivi de crochets avec l’index de ligne et de colonne.

  • Pour accéder à l’élément 5 :
    mat[2,2]
  • Pour accéder à l’élément 6 :
    mat[3,2]
  • Pour accéder à toute la première colonne, soit [1 2 3] :
    mat[,1]
  • Pour accéder à toute la deuxième ligne, soit [2 5 8] :
    mat[2,]

Calculs sur les matrices

Addition et soustraction de matrices

Condition : pour additionner ou soustraire des matrices, elles doivent avoir la même dimension, c’est-à-dire le même nombre de lignes et de colonnes. Par exemple :

Les matrices ci-dessous, mat1 et mat2, sont de dimension 3 × 3 : elles ont 3 lignes et 3 colonnes, identiques dans les deux matrices.

mat1 <- matrix(c(5,10,15,20,25,30,35,40,45), nrow = 3)
print(mat1)

mat2 <- matrix(c(50,55,60,65,70,75,80,85,90), nrow = 3)
print(mat2)
     [,1] [,2] [,3]
[1,]    5   20   35
[2,]   10   25   40
[3,]   15   30   45
     [,1] [,2] [,3]
[1,]   50   65   80
[2,]   55   70   85
[3,]   60   75   90

Les matrices sont affichées avec leurs éléments, remplis par colonne.

add_output <- mat1 + mat2
cat("Addition","\n")
print(add_output)


sub_output <- mat1 - mat2
cat("Subtraction","\n")
print(sub_output)
Addition
     [,1] [,2] [,3]
[1,]   55   85  115
[2,]   65   95  125
[3,]   75  105  135
Subtraction
     [,1] [,2] [,3]
[1,]  -45  -45  -45
[2,]  -45  -45  -45
[3,]  -45  -45  -45

Lors de l’addition ou de la soustraction, les opérations se font élément par élément entre les deux matrices. Par exemple, pour l’addition, l’entrée ligne 1, colonne 1 de mat1 (5) est additionnée à l’entrée ligne 1, colonne 1 de mat2 (50) pour donner 55. Le même principe s’applique à toutes les entrées.

Multiplication et division de matrices

Condition : pour la multiplication et la division élément par élément, les matrices doivent avoir les mêmes dimensions.

Multiplication de matrices

Considérons deux matrices, mat1 et mat2, ayant chacune 3 lignes et 2 colonnes. Elles contiennent six éléments, remplis par colonne, et ont une dimension 3 × 2.

mat1<- matrix(c(2,4,6,8,10,12), nrow = 3,ncol =2)
print(mat1)

mat2 <- matrix(c(14,16,18,20,22,24), nrow = 3,ncol=2)
print(mat2)

final <- mat1 * mat2
print('------------------')
cat("Multiplication","\n")
print(final)
     [,1] [,2]
[1,]    2    8
[2,]    4   10
[3,]    6   12
     [,1] [,2]
[1,]   14   20
[2,]   16   22
[3,]   18   24
-----------------
Multiplication
     [,1] [,2]
[1,]   28  160
[2,]   64  220
[3,]  108  288

La sortie montre une multiplication élément par élément entre mat1 et mat2. Par exemple, « mat1[1][1] » (2) est multiplié par « mat2[1][1] » (14) pour donner 28. Le procédé est identique pour chaque élément, jusqu’à « mat1[3][2] » (12) et « mat2[3][2] » (24) qui donnent 288.

Division de matrices

Prenons le même exemple avec deux matrices mat1 et mat2 de dimensions 3 × 2, remplies par colonne.

mat1<- matrix(c(2,4,6,8,10,12), nrow = 3,ncol =2)
print(mat1)

mat2 <- matrix(c(14,16,18,20,22,24), nrow = 3,ncol=2)
print(mat2)
final <- mat1 / mat2
print('--------------')
cat("Division","\n")
print(final)
   [,1] [,2]
[1,]    2    8
[2,]    4   10
[3,]    6   12
     [,1] [,2]
[1,]   14   20
[2,]   16   22
[3,]   18   24
--------------
Division
          [,1]      [,2]
[1,] 0.1428571 0.4000000
[2,] 0.2500000 0.4545455
[3,] 0.3333333 0.5000000

La sortie montre une division élément par élément entre mat1 et mat2. Par exemple, « mat1[1][1] » (2) est divisé par « mat2[1][1] » (14) pour donner 0,1428571. Même logique pour tous les éléments, jusqu’à « mat1[3][2] » (12) et « mat2[3][2] » (24) donnant 0,5000000.

Félicitations

Félicitations, vous êtes arrivé au bout de ce tutoriel !

Dans ce tutoriel, vous avez découvert les matrices en R : nommage des lignes et colonnes, accès aux éléments, ainsi que les opérations d’addition, de soustraction, de multiplication et de division.

Si vous souhaitez aller plus loin avec R, suivez le cours Introduction to R de DataCamp.

Sujets
R
Science des données

Cours R

Cours

Introduction à R

4 h
3.1M
Maîtrisez les bases de l’analyse de données en R et pratiquez les vecteurs, listes et data frames avec des données réelles.
Afficher les détailsRight Arrow
Commencer Le Cours
Voir plusRight Arrow