获取与值匹配的dimnames的名称

时间:2016-06-08 09:05:38

标签: r

我试图从矩阵选择中得到偶数。

names<-c("n1", "n2", "n3")
mat<-matrix(0, nrow=length(names), ncol=length(names), dimnames=list(names, names))
mat[1,2]<-3
mat[3,2]<-6
mat

输出是:

   n1 n2 n3
n1  0  3  0
n2  0  0  0
n3  0  6  0

我想让所有夫妻大于0:

n1,n2
n2,n3

使用rownames和colnames会给我NULL。

1 个答案:

答案 0 :(得分:2)

试试这个:

matrix(rownames(mat)[which(mat!=0,arr.ind=TRUE)],ncol=2)
#     [,1] [,2]
#[1,] "n1" "n2"
#[2,] "n3" "n2"

结果矩阵的每一行显示不同于零元素的索引。