介绍
排序是一种根据给定条件将数组中的元素按有序序列排列的过程。在 NumPy 库中,提供了多种函数来执行基于不同排序算法(如快速排序、堆排序和归并排序)的排序操作。在本实验中,我们将学习如何使用不同的排序算法对 NumPy 中的 ndarray 进行排序。
虚拟机使用提示
虚拟机启动完成后,点击左上角切换到 Notebook 标签页,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,请随时向 Labby 寻求帮助。实验结束后请提供反馈,我们将及时为你解决问题。
导入 NumPy 库
在这一步中,我们将导入 NumPy 库,这是执行排序操作所必需的。
import numpy as np
沿轴排序
在这一步中,我们将根据特定轴对数组中的元素进行排序。为了对数组进行排序,我们将使用 NumPy 的 sort() 函数。
a = np.array([[17, 15], [10, 25]])
arr1 = np.sort(a, axis = 0)
print("Sorting Along first axis : \n")
print(arr1)
沿最后一个轴排序
在这一步中,我们将根据最后一个轴对数组进行排序。
b = np.array([[1, 15], [20, 18]])
arr2 = np.sort(b, axis = -1)
print("\nSorting along last axis : \n")
print(arr2)
沿无轴排序
在这一步中,我们将沿无轴对数组中的元素进行排序,排序前数组会被展平。
c = np.array([[12, 15], [10, 1]])
arr3 = np.sort(c, axis = None)
print("\nSorting Along none axis : \n")
print(arr3)
使用字段对数组排序
在这一步中,我们将使用字段对数组进行排序。
d = np.dtype([('name', 'S10'),('marks',int)])
arr = np.array([('Mukesh',200),('John',251)],dtype = d)
print("Sorting data ordered by name")
print(np.sort(arr,order = 'name'))
总结
在本实验中,我们学习了 NumPy 库中的排序功能。我们还了解了 numpy.sort() 函数的语法、参数和返回值。通过使用 numpy.sort() 函数的不同参数,我们沿不同的轴和字段对数组中的元素进行了排序。