NumPy中matlib模块的形状操作函数
发布时间:2023-12-25 03:29:07
NumPy是一个常用的Python库, 用于支持多维数组和矩阵的计算。NumPy中的matlib模块提供了一些用于操作矩阵形状的函数。
1. reshape()函数:该函数用于改变数组的形状,返回一个新的数组。它的用法如下:
import numpy as np # 创建一个数组 a = np.array([1, 2, 3, 4, 5, 6]) # 使用reshape函数改变数组形状 b = np.reshape(a, (2, 3)) print(b)
输出结果为:
[[1 2 3] [4 5 6]]
通过reshape函数将一维数组a转换成了一个2行3列的二维数组。reshape函数的 个参数是要改变形状的数组,第二个参数是目标形状。
2. resize()函数:该函数用于重新调整数组的形状,原数组将被修改。它的用法如下:
import numpy as np # 创建一个数组 a = np.array([[1, 2, 3], [4, 5, 6]]) # 使用resize函数重新调整数组形状 np.resize(a, (3, 2)) print(a)
输出结果为:
[[1 2 3] [4 5 6] [1 2 3]]
通过resize函数将原数组调整为3行2列的形状,如果新形状的尺寸大于原数组的尺寸,那么原数组将会被重复填充以适应新形状。
3. ravel()函数:该函数用于将多维数组展平为一维数组。它的用法如下:
import numpy as np # 创建一个二维数组 a = np.array([[1, 2, 3], [4, 5, 6]]) # 使用ravel函数展平数组 b = np.ravel(a) print(b)
输出结果为:
[1 2 3 4 5 6]
通过ravel函数将二维数组a展平为一维数组。
4. flatten()函数:该函数也用于将多维数组展平为一维数组,但不同于ravel函数,flatten函数总是返回拷贝,而不是视图。它的用法如下:
import numpy as np # 创建一个二维数组 a = np.array([[1, 2, 3], [4, 5, 6]]) # 使用flatten函数展平数组 b = np.flatten(a) print(b)
输出结果为:
[1 2 3 4 5 6]
通过flatten函数将二维数组a展平为一维数组。
这些是NumPy中matlib模块的形状操作函数的用法示例。通过reshape函数可以改变数组形状,resize函数可以重新调整数组大小,ravel函数可以展平多维数组为一维数组,而flatten函数则总是返回展平后的拷贝。这些函数在处理数组形状时非常有用。
