我有一个名为output
的numpy数组,我想按降序浏览每个值。
print((output).argsort())
给我
[2 3 0 1]
output
的值是:
[-0.00214862 0.05784702 -0.01105899 -0.00507164]
我想要的是遍历每个值(从0.05784702
开始)并检查某些功能。如果是这样,我可以停止检查。否则转到下一个。
答案 0 :(得分:1)
你能做吗
for a in reversed(sorted(output)):
print(a)
编辑:重新阅读您的问题并意识到您希望对其进行排序
答案 1 :(得分:0)
您可以对它进行反向排序:
-np.sort(-output)
您还可以反转索引
output[::-1].sort()
答案 2 :(得分:0)
您可以先使用numpy.sort()对其进行排序,然后使用numpy.flip()翻转获得的结果,这将以降序返回数组,如下所示:
In [21]: arr
Out[21]: array([-0.00214862, 0.05784702, -0.01105899, -0.00507164])
In [22]: np.flip(np.sort(arr))
Out[22]: array([ 0.05784702, -0.00214862, -0.00507164, -0.01105899])
答案 3 :(得分:0)
您可以将函数reverse
中的参数sorted()
设置为True
:
import numpy as np
arr = np.arange(4)
for i in sorted(arr, reverse=True):
print(i)
输出:
3
2
1
0