ndarray 分割 \t
时间: 2024-02-03 20:36:41 浏览: 52
在 NumPy 中,可以使用函数 `numpy.split()` 将一个数组分割成多个子数组。该函数的语法如下:
```python
numpy.split(ary, indices_or_sections, axis=0)
```
其中,`ary` 表示要分割的数组,`indices_or_sections` 可以是一个整数、一个列表或者一个 tuple,表示分割的位置或者分割的段数,`axis` 表示沿着哪个轴进行分割。需要注意的是,分割后得到的子数组的形状可能不完全一样。
举个例子,假设有一个二维数组 `a`:
```python
import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])
```
我们可以将其沿着行方向分成两个子数组:
```python
b, c = np.split(a, 2, axis=0)
```
此时,`b` 和 `c` 分别为:
```python
>>> b
array([[1, 2, 3],
[4, 5, 6]])
>>> c
array([[ 7, 8, 9],
[10, 11, 12]])
```
也可以将其沿着列方向分成三个子数组:
```python
d, e, f = np.split(a, 3, axis=1)
```
此时,`d`、`e` 和 `f` 分别为:
```python
>>> d
array([[ 1],
[ 4],
[ 7],
[10]])
>>> e
array([[ 2],
[ 5],
[ 8],
[11]])
>>> f
array([[ 3],
[ 6],
[ 9],
[12]])
```
阅读全文