Lorsque je sous-ensemble une matrice à une seule colonne, le résultat est de classe numérique, pas de matrice (c'est-à-dire myMatrix [ 5] pour sous-ensemble à la cinquième colonne). Existe-t-il un moyen compact de sous-ensemble dans une seule colonne, de conserver le format de matrice et de conserver les noms de ligne/colonne sans faire quelque chose de compliqué comme:
matrix( myMatrix[ , 5 ] , dimnames = list( rownames( myMatrix ) , colnames( myMatrix )[ 5 ] )
Utilisez le drop=FALSE
argument à [
.
m <- matrix(1:10,5,2)
rownames(m) <- 1:5
colnames(m) <- 1:2
m[,1] # vector
m[,1,drop=FALSE] # matrix