当前位置:   article > 正文

Numpy:sort()函数 与 argsort()函数_np.sort

np.sort

1 np.sort()函数

np.sort()函数的作用是对给定的数组的元素进行排序。

np.sort(a, axis=-1, kind='quicksort', order=None)
参数含义
a排序的数组
axis排序的方向,None表示展开来排序,默认值为-1,表示沿最后的轴排序。可选有0、1,axis = 1 按行排序, axis = 0 按列排序
kind排序的算法,包含快排'quicksort'、混排'mergesort'、堆排'heapsort', 默认为‘quicksort'
order一个字符串或列表,可以设置按照某个属性进行排序

2 栗子

  1. import numpy as np
  2. a = np.array([[1, 5, 4, 8, 4],
  3. [2, 4, 7, 1, 5],
  4. [1, 0, 3, 4, 2]])
  5. a1 = np.sort(a)
  6. a2 = np.sort(a, axis=1) # 按行排序
  7. a3 = np.sort(a, axis=0) # 按列排序
  8. print(a1)
  9. print(a2)
  10. print(a3)
  11. # results
  12. [[1 4 4 5 8]
  13. [1 2 4 5 7]
  14. [0 1 2 3 4]]
  15. [[1 4 4 5 8]
  16. [1 2 4 5 7]
  17. [0 1 2 3 4]]
  18. [[1 0 3 1 2]
  19. [1 4 4 4 4]
  20. [2 5 7 8 5]]

参考:

2 np.argsort()函数

numpy.argsort(a, axis=-1, kind='quicksort', order=None)
  • 功能:将矩阵a按照axis排序,并返回排序后的下标
  • 参数:a:输入矩阵, axis:需要排序的维度
  • 返回值:输出排序后的下标

栗子:

  1. import numpy as np
  2. x1 = np.array([3, 1, 2])
  3. print(np.argsort(x1))
  4. # [1 2 0]
  5. # axis=0
  6. #沿着行向下(每列)的元素进行排序
  7. x2 = np.array([[1, 5, 7], [3, 2, 4]])
  8. print("axis=0排序\n",np.argsort(x2, axis=0))
  9. # axis=0排序
  10. # [[0 1 1]
  11. # [1 0 0]]
  12. # axis=1
  13. #沿着列向右(每行)的元素进行排序
  14. print("axis=1排序\n",np.argsort(x2, axis=1))
  15. # axis=1排序
  16. # [[0 1 2]
  17. # [1 0 2]]
  • np.argsort()[::-1]:降序排序后返回索引值

  • np.argsort()[::1]:升序排序后返回索引值

参考:https://blog.csdn.net/u013555719/article/details/83864122

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/637621
推荐阅读
相关标签
  

闽ICP备14008679号