给定矩阵
x <- matrix(c(1,2,3,4), nrow=2, ncol=2)
colnames(x) <- c('a','b')
rownames(x) <- c('c','d')
如何找到最小值的列索引/名称和行索引/名称?
我试过which.min,但我需要获取行/列索引而不是元素。有任何想法吗?
给定矩阵
x <- matrix(c(1,2,3,4), nrow=2, ncol=2)
colnames(x) <- c('a','b')
rownames(x) <- c('c','d')
如何找到最小值的列索引/名称和行索引/名称?
我试过which.min,但我需要获取行/列索引而不是元素。有任何想法吗?
您可以使用which
which(x == min(x), arr.ind = TRUE)
例如 :
x <- matrix(c(1, 2, 0, 4), nrow = 2, ncol = 2)
which(x == min(x), arr.ind = TRUE)
## row col
## [1,] 1 2
如果您想将矩阵视为向量,您可以使用which.min
which.min(x)
# > [1] 1
which.max(x)
# > [1] 4
作为第一和第四元素。
您还可以找到最大值并返回带有位置的有序向量(但不是最小值)
max.col(x)
# [1] 2 2