python数组垂直堆叠
时间: 2024-11-12 10:16:53 浏览: 9
在Python中,特别是在使用NumPy库时,如果需要将两个或更多的数组沿着某一轴(通常是第一轴,即行向量的方向)堆叠在一起,你可以使用`numpy.vstack()`或`numpy.hstack()`函数。这里分别针对垂直(行方向)堆叠和水平(列方向)堆叠:
1. **垂直堆叠 (vstack)**: 当你想要把数组按照行添加时,可以使用`vstack()`。它会将所有输入数组的第二轴(列数)连接起来,形成一个大的数组。
```python
import numpy as np
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])
stacked_arr = np.vstack((arr1, arr2))
print(stacked_arr) # 输出:[[1 2]
# [3 4]
# [5 6]
# [7 8]]
```
2. **水平堆叠 (hstack)**: 对于列向量的堆叠,你可以使用`hstack()`。它会将所有输入数组的第一轴连接起来。
```python
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
stacked_arr = np.hstack((arr1, arr2))
print(stacked_arr) # 输出:[1 2 3 4 5 6]
```
注意,这两个函数都接受一个数组列表作为参数。如果你只有一个数组,那么它们的行为几乎是一样的,只是不会进行堆叠操作。
阅读全文