【发布时间】:2018-08-29 21:46:54
【问题描述】:
建议我在 R 中有以下矩阵:
set.seed(123) # the only way to have a reproducible result
m <- matrix(runif(16,1,20), 8,1)
m
[,1]
[1,] 6.463973
[2,] 15.977798
[3,] 8.770562
[4,] 17.777331
[5,] 18.868878
[6,] 1.865573
[7,] 11.034004
[8,] 17.955962
我现在希望以排序的方式返回 4 个最小值的索引。在该示例中,我试图获得一个包含索引 6, 1, 3, 7 的对象,从第一个最小值到第四个最小值排序。谢谢!
【问题讨论】:
-
您是要搜索整个矩阵还是一次只搜索一列?
-
你在找
order(m)[1:4] -
sapply(1:4, function(x) which(m == sort(m)[x])). -
@Onyambu:太好了,可能是最短的方法!