相关疑难解决方法(0)

如何在Python中获取已排序数组的索引

我有一个数字列表:

myList = [1, 2, 3, 100, 5]
Run Code Online (Sandbox Code Playgroud)

现在,如果我对此列表进行排序以获取[1, 2, 3, 5, 100].我想要的是排序顺序中原始列表中元素的索引,即[0, 1, 2, 4, 3] --- ala MATLAB的sort函数,它返回值和索引.

python indexing sorted

180
推荐指数
9
解决办法
17万
查看次数

使用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万
查看次数

在基本python中等效Numpy.argsort()?

在那里,做关于Python的内置函数python.array什么argsort()上呢numpy.array

python numpy

47
推荐指数
3
解决办法
3万
查看次数

如何返回列表中每个元素的顺序索引?

比方说我有一个数字列表L=[50, 10, 30],在Python中我想返回一个列表,给出每个元素的顺序索引L,这将是这个输出:[2, 0, 1].

尽管这似乎是一个简单的任务,在这个网站(很多问题,在这里 在这里,并在这里例如)注重反过来,这意味着从指数排序列表的观点:[1, 2, 0],这不是我想要的.

谢谢,

编辑:关于重复,我希望他们也被计算(按照外观顺序绘制).[50,30,10,30]会给[3,1,0,2]

python sorting indexing

5
推荐指数
1
解决办法
115
查看次数

如何打印出已排序 python 列表的所有项目的原始索引

我有一个清单

a=[2,7,23,4563,23]. 
Run Code Online (Sandbox Code Playgroud)

如何在一行中打印所有元素的索引?

基本上,我必须对列表进行排序并打印原始索引作为输出。例子:

A=[4,5,3,7,1]
Run Code Online (Sandbox Code Playgroud)

排序后新数组变为

A=[1,3,4,5,7]
Run Code Online (Sandbox Code Playgroud)

所需的输出应该是

4 2 0 1 3
Run Code Online (Sandbox Code Playgroud)

python arrays sorting

0
推荐指数
1
解决办法
158
查看次数

标签 统计

python ×5

sorting ×3

indexing ×2

numpy ×2

arrays ×1

sorted ×1