¿Cómo subconjunto de matriz en una columna, mantener el tipo de datos de matriz, mantener nombres de fila/columna?

Resuelto Suraj asked hace 54 años • 1 respuestas

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 ] )
Suraj avatar Jan 01 '70 08:01 Suraj
Aceptado

Utilice el drop=FALSEargumento para [.

m <- matrix(1:10,5,2)
rownames(m) <- 1:5
colnames(m) <- 1:2
m[,1]             # vector
m[,1,drop=FALSE]  # matrix
Joshua Ulrich avatar Sep 08 '2011 17:09 Joshua Ulrich