【发布时间】:2015-04-02 09:26:57
【问题描述】:
当我尝试通过行名对 1 列矩阵进行子集化时,子集化有效,但返回了一个数字向量。
你能以某种方式阻止这种行为并保留行名吗?
M<-as.matrix(rnorm(5))
rownames(M)<-LETTERS[1:5]
M
[,1]
A 0.6250957
B 0.7330598
C -0.7127075
D 0.2162602
E 0.2223444
M <- M[which(rownames(M) != "A")]
M
## [1] 0.7330598 -0.7127075 0.2162602 0.2223444
【问题讨论】:
-
您必须添加 drop=FALSE,因为您的矩阵是一列。
M[which(rownames(M) != "A"),,drop=FALSE]