行列を単一の列にサブセット化すると、結果は行列ではなく数値クラスになります(つまり、5番目の列にサブセット化するmyMatrix [、5])。次のような複雑なことをせずに、単一の列にサブセット化し、行列形式を維持し、行/列名を維持するコンパクトな方法はありますか?
matrix( myMatrix[ , 5 ] , dimnames = list( rownames( myMatrix ) , colnames( myMatrix )[ 5 ] )
回答:
のdrop=FALSE
引数を使用します[
。
m <- matrix(1:10,5,2)
rownames(m) <- 1:5
colnames(m) <- 1:2
m[,1] # vector
m[,1,drop=FALSE] # matrix
m[1,,drop=FALSE]
cooksd<-as.data.frame(cooks.distance(ft1)) cooksD_outliers<-cooksd[cooksd>0.1,drop=FALSE,]