相关疑难解决方法(0)

Numpy argsort - 它在做什么?

为什么numpy给出了这个结果:

x = numpy.array([1.48,1.41,0.0,0.1])
print x.argsort()

>[2 3 1 0]
Run Code Online (Sandbox Code Playgroud)

当我希望它能做到这一点时:

[3 2 0 1]

显然我对这个功能的理解是缺乏的.

python numpy

105
推荐指数
2
解决办法
6万
查看次数

使用Python/NumPy对数组中的项目进行排名

我有一个数字数组,我想创建另一个数组,表示第一个数组中每个项目的排名.我正在使用Python和NumPy.

例如:

array = [4,2,7,1]
ranks = [2,1,3,0]
Run Code Online (Sandbox Code Playgroud)

这是我提出的最佳方法:

array = numpy.array([4,2,7,1])
temp = array.argsort()
ranks = numpy.arange(len(array))[temp.argsort()]
Run Code Online (Sandbox Code Playgroud)

有没有更好/更快的方法避免两次排序数组?

python sorting numpy

82
推荐指数
6
解决办法
7万
查看次数

标签 统计

numpy ×2

python ×2

sorting ×1