Kiedy podzestawę macierzy do pojedynczej kolumny,wynikiem jest numeryczna klasa, a nie macierz (tj. myMatrix [, 5] do podzbioru do piątej kolumny). Czy istnieje kompaktowy sposób podziału na pojedynczą kolumnę, zachowanie formatu matrycy i zachowanie nazw wierszy / kolumn bez wykonywania skomplikowanych czynności, takich jak:
matrix( myMatrix[ , 5 ] , dimnames = list( rownames( myMatrix ) , colnames( myMatrix )[ 5 ] )
Odpowiedzi:
83 za odpowiedź № 1Użyj drop=FALSE
argument do [
.
m <- matrix(1:10,5,2)
rownames(m) <- 1:5
colnames(m) <- 1:2
m[,1] # vector
m[,1,drop=FALSE] # matrix