¿Cómo subconjunto de matriz en una columna, mantener el tipo de datos de matriz, mantener nombres de fila/columna?
Cuando subconjunto una matriz en una sola columna, el resultado es de clase numérica, no de matriz (es decir, myMatrix[, 5] para subconjunto de la quinta columna). ¿Existe una forma compacta de crear subconjuntos en una sola columna, mantener el formato de matriz y mantener los nombres de fila/columna sin hacer algo complicado como:
matrix( myMatrix[ , 5 ] , dimnames = list( rownames( myMatrix ) , colnames( myMatrix )[ 5 ] )
Aceptado
Utilice el drop=FALSE
argumento para [
.
m <- matrix(1:10,5,2)
rownames(m) <- 1:5
colnames(m) <- 1:2
m[,1] # vector
m[,1,drop=FALSE] # matrix