numpy.ndarray怎么改变数组形状
时间: 2024-05-10 22:16:56 浏览: 92
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
可以使用numpy中的reshape函数来改变数组的形状。reshape函数会返回一个新的数组,该数组的形状是由参数指定的。
例如,假设有一个形状为(2, 3, 4)的三维数组arr,可以使用reshape函数将其转换为形状为(3, 8)的二维数组:
```python
import numpy as np
arr = np.zeros((2, 3, 4)) # 创建一个形状为(2, 3, 4)的数组
new_arr = arr.reshape((3, 8)) # 将arr转换为形状为(3, 8)的数组
```
需要注意的是,reshape函数返回的新数组与原数组共享同一份数据。也就是说,改变新数组中的数据会同时改变原数组中的数据。如果需要复制原数组的数据并创建一个新的数组,可以使用numpy的copy函数:
```python
new_arr = arr.reshape((3, 8)).copy() # 创建一个新的数组并复制arr中的数据
```
阅读全文