- 1.meshgrid()
- 2.where()
- 3.sort()
- 4. unique()
X, Y = np.meshgrid(x, y) 代表的是将x中每一个数据和y中每一个数据组合生成很多点,然后将这些点的x坐标放入到X中,y坐标放入Y中,并且相应位置是对应的
x = np.array([1,1,2,2,3]) y = np.arange(4) x array([1, 1, 2, 2, 3]) y array([0, 1, 2, 3])
两者组合:
[[[1,0], [1,0], [2,0], [2,0], [3,0]], [[1,1], [1,1], [2,1], [2,1], [3,1]], [[1,2], [1,2], [2,2], [2,2], [3,3]], [[1,3], [1,3], [2,3], [2,3], [3,3]]]
经过:X, Y = np.meshgrid(x, y)
X: [[1, 1, 2, 2, 3], [1, 1, 2, 2, 3], [1, 1, 2, 2, 3], [1, 1, 2, 2, 3]] Y: [[0, 0, 0, 0, 0], [1, 1, 1, 1, 1], [2, 2, 2, 2, 2], [3, 3, 3, 3, 3]]2.where()
np.where有两种用法:
- 三个参数时,np.where(confident, x, y),满足条件confident时返回x,不满足条件时返回y;
- 一个参数时,np.where(confident),返回满足条件confident的元素在矩阵中的位置
举例:
arr1 = np.array([13,4,6,2]) arr2 = np.array([5,6,7,1]) # 三参数举例 np.where(arr1>arr2, arr1, arr2) array([13, 6, 7, 2]) # 一个参数举例: np.where(arr1>arr2) (array([0, 3], dtype=int64),)3.sort()
将数组(矩阵)中的数据进行排序,默认是进行行排序
行排序:arr.sort(axis=1)
列排序:arr.sort(axis=0)
举例:
arr = np.array([[6, 7, 3, 4],[2, 1, 2, 7], [8, 9, 1, 2]])
array([[6, 7, 3, 4],
[2, 1, 2, 7],
[8, 9, 1, 2]])
行排序:
arr.sort(axis=1)
arr
array([[3, 4, 6, 7],
[1, 2, 2, 7],
[1, 2, 8, 9]])
列排序:
arr.sort(axis=0)
arr
array([[2, 1, 1, 2],
[6, 7, 2, 4],
[8, 9, 3, 7]])
4. unique()
去除数组中重复的数字,并进行排序后输出
语法:np.unique(arr)
举例:
arr1 = np.array([1,1,2,2,4,5,6]) np.unique(arr1) array([1, 2, 4, 5, 6])



