使用python将一个数组的shape(2,360,1)改成(360,2)
时间: 2024-09-13 19:18:54 浏览: 39
在Python中,如果你使用的是NumPy库,可以通过`transpose`方法或者`reshape`方法来改变数组的形状。在这个例子中,我们需要将数组从形状`(2, 360, 1)`改变为`(360, 2)`。以下是两种方法的具体实现:
1. 使用`transpose`方法:
```python
import numpy as np
# 假设a是原始数组
a = np.random.rand(2, 360, 1)
# 使用transpose方法重新排列轴
new_shape = a.transpose(1, 2, 0).squeeze()
print(new_shape.shape) # 输出应为(360, 2)
```
注意,使用`transpose`方法后得到的新数组形状为`(360, 1, 2)`,因此还需要使用`squeeze`方法来移除单一维度。
2. 使用`reshape`方法:
```python
import numpy as np
# 假设a是原始数组
a = np.random.rand(2, 360, 1)
# 使用reshape方法改变形状
new_shape = a.reshape(360, 2)
print(new_shape.shape) # 输出应为(360, 2)
```
`reshape`方法直接将数组的形状改变为`(360, 2)`,这是一个直接且常用的方法来改变数组的形状。
阅读全文