欢迎访问宙启技术站
智能推送

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函数则总是返回展平后的拷贝。这些函数在处理数组形状时非常有用。