概述
argsort()函数在模块numpy.core.fromnumeric中。
在python中排序数组,或者获取排序顺序的时候,我们常常使用numpy包的argsort函数来完成。
如下图所示,是使用python获取到数组中的排序的顺序。
1
2
3
4
5
6
7
8
9
|
data = numpy.array([ 1 , 2 , 3 , 4 , 5 ]) datasort = numpy.argsort(data) datasort Out[ 39 ]: array([ 0 , 1 , 2 , 3 , 4 ], dtype = int64) data Out[ 40 ]: array([ 1 , 2 , 3 , 4 , 5 ]) datasort1 = data.argsort() datasort1 Out[ 42 ]: array([ 0 , 1 , 2 , 3 , 4 ], dtype = int64) |
我们也可以通过help(numpy.argsort)来查看使用方法
1
2
3
4
5
6
|
help (numpy.argsort) Help on function argsort in module numpy.core.fromnumeric: argsort(a, axis = - 1 , kind = 'quicksort' , order = None ) Returns the indices that would sort an array. Perform an indirect sort along the given axis using the algorithm specified by the `kind` keyword. It returns an array of indices of the same shape as |
如果想要通过argsort实现排序可以使用切片实现
1
2
3
4
|
data1 = numpy.array([ 1 , 3 , 4 , 56 , 2 , 0 ]) datasort = data1[data1.argsort()] datasort Out[ 48 ]: array([ 0 , 1 , 2 , 3 , 4 , 56 ]) |
PS:NumPy 中argsort函数
排序函数,返回array类型
argsort函数返回的是数组值从小到大的元素的索引值
1
2
3
4
5
6
|
#!/usr/bin/env python # -*- coding: utf-8 -*- import numpy as np inX = np.array([ 1 , 2 , - 1 , 3 , 4 , 7 , 8 ]) print inX print inX.argsort() |
总结
以上所述是小编给大家介绍的python中numpy包中的argsort函数的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://blog.csdn.net/huang_shao1/article/details/82217349