Une matrice peut être numérique, textuelle ou booléenne.
Seules les matrices numériques seront étudiées ici.
|
1 |
2 |
3 |
1 |
0 |
10 |
0 |
2 |
15 |
0 |
0 |
Une matrice numérique
Voici plusieurs façons de construire cette matrice :
# ajout une à une des valeurs
m = matrix(0, nrow=2, ncol=3) # matrice à 2 lignes et 3 colonnes de 0
m[2,1] = 15
m[1,2] = 10
# fusion de lignes ou de colonnes
m = rbind( c(0, 10, 0), c(15,0,0) ) # fusion de lignes
m = cbind( c(0,15), c(10,0), c(0,0) ) # fusion de colonnes
# création à partir d'un vecteur
m = matrix(c(0,10,0,15,0,0), nrow=2, byrow=T) # remplissage ligne par ligne
m = matrix(c(0,10,0,15,0,0), ncol=3, byrow=T) # idem
m = matrix(c(0,15,10,0,0,0), nrow=2, byrow=F) # remplissage colonne par colonne
Une matrice peut bien être indexée par des nombres, mais
aussi par des vecteurs numériques ou booléens.
Il est également possible d'omettre l'indice de ligne ou l'indice de colonne.
# deux façons d'ajouter 0.1 ligne 2, colonnes 1 et 3 :
m[2,c(1,3)] = m[2,c(1,3)] + 0.1
m[c(F,T),c(1,3)] = m[c(F,T),c(1,3)] + 0.1
print(m)
# ajouter 0.1 ligne 2 (l'indice de colonne est omis) :
m[2,] = m[2,] + 0.1
print(m)
# ajouter 0.1 colonnes 1 et 3 (l'indice de ligne est omis) :
m[,c(1,3)] = m[,c(1,3)] + 0.1
print(m)
Dans ce cours, les matrices seront utilisées pour améliorer la
présentation des résultats dans les rapports
(voir exercice 3 par exemple).