Keď podsúbor maticu na jeden stĺpec,výsledok je číselnej triedy, nie matrice (t. j. myMatrix [, 5] na podsúbor do piateho stĺpca). Existuje kompaktný spôsob, ako podmnožiť jediný stĺpec, udržiavať formát matrice a udržiavať názvy riadkov / stĺpov bez toho, aby ste robili niečo komplikované, ako je:
matrix( myMatrix[ , 5 ] , dimnames = list( rownames( myMatrix ) , colnames( myMatrix )[ 5 ] )
odpovede:
83 pre odpoveď č. 1Použi drop=FALSE
argument pre [
.
m <- matrix(1:10,5,2)
rownames(m) <- 1:5
colnames(m) <- 1:2
m[,1] # vector
m[,1,drop=FALSE] # matrix