【发布时间】:2017-01-09 08:14:24
【问题描述】:
我有一个二维数组,我想从中获取在其行和列中的前 2 个值中的每个元素的索引。例如,给定以下数组 -
r = np.random.rand(5,5)
>>> r
array([[ 0.89771084, 0.84415435, 0.81601728, 0.42322215, 0.78240944],
[ 0.84490939, 0.53644975, 0.3506268 , 0.98212093, 0.76426087],
[ 0.254155 , 0.12818165, 0.82656036, 0.97441244, 0.58597015],
[ 0.50566688, 0.67774518, 0.58434845, 0.5204808 , 0.9225643 ],
[ 0.73930611, 0.31890204, 0.47691016, 0.28034347, 0.57832287]])
所需的输出是 -
[[0,0],
[1,0],
[0,1],
[3,1],
[2,2],
[1,3],
[2,3],
[3,4]]
注意[0,2] 被省略了,因为虽然它是列中的第二大元素,但它是行中的第三大元素。
【问题讨论】:
-
不够清楚。试试
argsort。 -
@Divakar 什么不清楚?
-
切片
rcols[3:5]表示什么?对于给定的样本,预期的输出是什么? -
@Divakar 是的,我已经编辑了
-
编辑大大改善了这个问题。我会投票支持重新开放,但缺乏这样做的声誉。