Fonction Matrix()
Parfois, vous n'avez peut-être qu'un seul vecteur que vous devez convertir en matrice. Comment cela peut-il être fait ? La réponse est simple - en utilisant la fonction matrix()
.
Cette fonction a les paramètres suivants :
matrix(data = NA, nrow = 1, ncol = 1, byrow = F)
Ce ne sont pas tous les paramètres, mais les plus importants pour nous.
data
- est le vecteur que nous voulons utiliser pour construire la matrice ;nrow
- nombre de lignes dans une nouvelle matrice ;ncol
- nombre de colonnes dans une nouvelle matrice ;byrow
- logique, la matrice doit-elle être remplie par lignes. Il est important de noter que la longueur du vecteur rempli en tant que paramètredata
doit être divisible parnrow
ouncol
. Si les deux paramètres sont définis, alorsnrow*ncol
doit être égal à la longueur du vecteur.
Par exemple, construisons une matrice 3x3 avec des entiers de 1 à 9.
12345# Vector of integers num <- 1:9 # Build a matrix from vector matrix(num, nrow = 3, ncol = 3)
Comme vous pouvez le voir, cette matrice a été construite de haut en bas d'abord. Réglons le paramètre byrow
sur T
et comparons les résultats.
123num <- 1:9 # Build a matrix from vector by rows matrix(num, nrow = 3, ncol = 3, byrow = T)
Comme vous pouvez le voir, nous avons rempli cette matrice de gauche à droite. Nous étions libres de laisser uniquement l'un des paramètres nrow
ou ncol
puisque 9 (nombre d'éléments dans le vecteur) est divisible par 3 et donne un résultat entier.
Swipe to start coding
Étant donné un vecteur de nombres nommé num
.
2 4 6 8 10 12 14 16
Sur la base de ce vecteur, vous devez construire la matrice suivante.
2 4 6 8
10 12 14 16
Utilisez uniquement la fonction matrix()
, et réfléchissez aux valeurs correctes des paramètres.
Solution
Comment fonctionne la fonction seq()
? seq(a, b)
génère des entiers de a
à b
inclus. seq(a, b, c)
génère des entiers de a
à b
avec le pas c
.
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 5.56
Fonction Matrix()
Glissez pour afficher le menu
Parfois, vous n'avez peut-être qu'un seul vecteur que vous devez convertir en matrice. Comment cela peut-il être fait ? La réponse est simple - en utilisant la fonction matrix()
.
Cette fonction a les paramètres suivants :
matrix(data = NA, nrow = 1, ncol = 1, byrow = F)
Ce ne sont pas tous les paramètres, mais les plus importants pour nous.
data
- est le vecteur que nous voulons utiliser pour construire la matrice ;nrow
- nombre de lignes dans une nouvelle matrice ;ncol
- nombre de colonnes dans une nouvelle matrice ;byrow
- logique, la matrice doit-elle être remplie par lignes. Il est important de noter que la longueur du vecteur rempli en tant que paramètredata
doit être divisible parnrow
ouncol
. Si les deux paramètres sont définis, alorsnrow*ncol
doit être égal à la longueur du vecteur.
Par exemple, construisons une matrice 3x3 avec des entiers de 1 à 9.
12345# Vector of integers num <- 1:9 # Build a matrix from vector matrix(num, nrow = 3, ncol = 3)
Comme vous pouvez le voir, cette matrice a été construite de haut en bas d'abord. Réglons le paramètre byrow
sur T
et comparons les résultats.
123num <- 1:9 # Build a matrix from vector by rows matrix(num, nrow = 3, ncol = 3, byrow = T)
Comme vous pouvez le voir, nous avons rempli cette matrice de gauche à droite. Nous étions libres de laisser uniquement l'un des paramètres nrow
ou ncol
puisque 9 (nombre d'éléments dans le vecteur) est divisible par 3 et donne un résultat entier.
Swipe to start coding
Étant donné un vecteur de nombres nommé num
.
2 4 6 8 10 12 14 16
Sur la base de ce vecteur, vous devez construire la matrice suivante.
2 4 6 8
10 12 14 16
Utilisez uniquement la fonction matrix()
, et réfléchissez aux valeurs correctes des paramètres.
Solution
Comment fonctionne la fonction seq()
? seq(a, b)
génère des entiers de a
à b
inclus. seq(a, b, c)
génère des entiers de a
à b
avec le pas c
.
Merci pour vos commentaires !
Awesome!
Completion rate improved to 5.56single