2017-10-08 2 views
0

Actuellement en cours, j'apprends des choses sur les matrices. Il y a un problème particulier que je ne peux pas résoudre. Le problème me avait crée une matrice telle que celle-ci:Indexation d'une sous-matrice dans R

m=matrix(seq(2,48,2),nrow=6,ncol=4) 

qui renvoie ceci:

 [,1] [,2] [,3] [,4] 
[1,] 2 14 26 38 
[2,] 4 16 28 40 
[3,] 6 18 30 42 
[4,] 8 20 32 44 
[5,] 10 22 34 46 
[6,] 12 24 36 48 

A partir de là, je dois créer une autre matrice en utilisant m qui renverra les numéros suivants dans un matrice: 28,30,36,38,44,46. Retournant quelque chose comme ceci:

 [,1] [,2] 
[1,] 28 38 
[2,] 30 44 
[3,] 36 46 

J'ai pensé à simplement indexer chaque numéro individuellement, mais je me bats pour avoir R retourner plus d'un numéro. Comment ferais-je cela? Je vous remercie!

Répondre

3

Si ce sont les valeurs personnalisées, puis l'index pour obtenir les valeurs et les convertir en matrix

matrix(m[c(14:15, 18, 19, 22, 23)], ncol=2) 
#  [,1] [,2] 
#[1,] 28 38 
#[2,] 30 44 
#[3,] 36 46 
+1

Merci beaucoup! Dans ma tête je le compliquais en pensant que je devais appeler chaque numéro individuellement, par exemple en appelant 18 comme: [3,2] –