以下是关于“numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)”的完整攻略。
numpy库ndarray多维数组的维度变换方法
在NumPy中,ndarray多维数组的维度变换方法包括reshape、resize、swapaxes和flatten。
reshape方法
reshape方法用于改变数组的形状,返回一个新的数组,原数组的元素个数和新数组的元素个数必须相等。
下面是一个使用reshape方法改变数组形状的示例代码:
import numpy as np
# 创建一个一维数组
a = np.array([1, 2, 3, 4, 5, 6])
# 使用reshape方法改变数组形状
b = a.reshape((2, 3))
# 输出结果
print('Original array:')
print(a)
print('Reshaped array:')
print(b)
在上的示代码中,我们使用reshape方法将一个长度为6的一维数组改变为一个2x3的二维数组,并将其存储在变量b中。最后,我们输出了原数组和改变形状后的数组。
输出结果为:
Original array:
[1 2 3 5 6]
Reshaped array:
[[1 2 3]
[4 5 6]]
resize方法
resize方法用于改变数组的形,与reshape方法不同的是,resize方法会直接修改原数组的形状。
下面是一个使用resize方法改变数组形状的示例代码:
import numpy as np
# 创建一个一维数组
a = np.array([1, 2, 3, 4, 5, 6])
# 使用resize方法改变数组形状
a.resize((2, 3))
# 输出结果
print('Resized array:')
print(a)
在上面的示例代码中,我们使用resize方法将一个长度为6的一维数组改变为一个2x3的二维数组,并直接修改了原数组的形状。最后,我们输出了改变形状后的数组。
输出结果为:
Resized array:
[[1 2 3]
[4 5 6]]
swapaxes方法
swapaxes方法用于交换数组的两个轴返回一个新的数组。
下面是一个使用swapaxes方法交换数组轴的示例代码:
import numpy as np
# 创建一个二维数组
a = np.array([[1, 2, 3], [4, 5, 6]])
# 使用swapaxes方法交换数组轴
b = np.swapaxes(a,0, 1)
# 输出结果
print('Original arrayprint(a)
print('Swapped array:')
print(b)
在上面的示例代码中,我们使用swapaxes方法交换了一个2x3的二维数组的两个轴,并将其存储变量b中最后,我们输出了原数组和交换轴后的数组。
输出结果为:
Original array:
[[1 2 3]
[4 56]]
Swapped array:
[[1 4]
[2 5]
[3 6]]
flatten方法
flatten方法用于将多维数组转换为一维数组,返回一个新的数组。
下面是一个使用flatten方法将多维数组转换为一数组的示例代码:
import numpy as np
# 创建一个二维数组
a = np.array([[1, 2, 3], [4, 5, 6]])
# 使用flatten方法将多维数组转换为一维数组
b =.flatten()
# 输出结果
print('Original array:')
print(a)
print('Flattened array:')
print(b)
在上面的示例代码中,我们使用flatten方法将一个2x3的二维数组转换为一个长度为6的一维数组,并将其存储在变量b中。最后,我们输出了数组和转换后的一维数组。
输出结果为:
Original array:
[[1 2 3]
[4 5 6]]
Flattened array:
[1 2 3 4 5 6]
总结
综上所述,“numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)”的完整攻略包括了reshape、resize、swapaxes和flatten方法的介绍以及各自的示例代码。在实际应用中,可以根据具体的需求选择合适的方法来改变数组的形状和轴。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten) - Python技术站