web-dev-qa-db-ja.com

マトリックスを1つの列にサブセット化し、マトリックスデータ型を維持し、行/列名を維持する方法

マトリックスを単一の列にサブセット化すると、結果はマトリックスではなく数値クラスになります(つまり、5番目の列にサブセット化するmyMatrix [、5])。単一の列にサブセット化、マトリックス形式を維持、行/列名を維持するコンパクトな方法はありますか?

matrix( myMatrix[ , 5 ] , dimnames = list( rownames( myMatrix ) , colnames( myMatrix )[ 5 ] )
68
SFun28

drop=FALSE[引数を使用します。

m <- matrix(1:10,5,2)
rownames(m) <- 1:5
colnames(m) <- 1:2
m[,1]             # vector
m[,1,drop=FALSE]  # matrix
98
Joshua Ulrich