如何将矩阵子集到一列,维护矩阵数据类型,维护行/列名称? [英] How to subset matrix to one column, maintain matrix data type, maintain row/column names?

查看:24
本文介绍了如何将矩阵子集到一列,维护矩阵数据类型,维护行/列名称?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我将矩阵子集到单列时,结果是数值类,而不是矩阵(即 myMatrix[ , 5 ] 到第五列的子集).是否有一种紧凑的方法可以将子集设置为单列,维护矩阵格式并维护行/列名称,而无需执行以下复杂操作:

When I subset a matrix to a single column, the result is of class numeric, not matrix (i.e. myMatrix[ , 5 ] to subset to the fifth column). Is there a compact way to subset to a single column, maintain the matrix format, and maintain the row/column names without doing something complicated like:

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

这篇关于如何将矩阵子集到一列,维护矩阵数据类型,维护行/列名称?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆