numpy.split#
- numpy.split(ary, indices_or_sections, axis=0)[source]#
将数组分割成多个子数组,作为对 ary 的视图。
- 参数:
- aryndarray
要分割成子数组的数组。
- indices_or_sections整数或一维数组
如果 indices_or_sections 是整数 N,则数组将沿 axis 分割成 N 个相等的数组。如果无法进行这种分割,则会引发错误。
如果 indices_or_sections 是一个排序整数的一维数组,则这些条目指示沿 axis 数组分割的位置。例如,
[2, 3]
将对axis=0
产生:ary[:2]
ary[2:3]
ary[3:]
如果索引超过沿 axis 数组的维度,则相应地返回一个空子数组。
- axisint,可选
要分割的轴,默认为 0。
- 返回:
- 子数组ndarray 列表
作为对 ary 的视图的子数组列表。
- 引发:
- ValueError
如果 indices_or_sections 给定为整数,但分割结果不是均等分割。
另请参见
array_split
将数组分割成多个大小相等或接近相等大小的子数组。如果无法进行均等分割,则不会引发异常。
hsplit
水平(列方向)分割数组成多个子数组。
vsplit
垂直(行方向)分割数组成多个子数组。
dsplit
沿第三轴(深度)分割数组成多个子数组。
concatenate
沿现有轴连接一系列数组。
stack
沿新轴连接一系列数组。
hstack
水平(列方向)依次堆叠数组。
vstack
垂直(行方向)依次堆叠数组。
dstack
深度方向(沿第三维)依次堆叠数组。
示例
>>> import numpy as np >>> x = np.arange(9.0) >>> np.split(x, 3) [array([0., 1., 2.]), array([3., 4., 5.]), array([6., 7., 8.])]
>>> x = np.arange(8.0) >>> np.split(x, [3, 5, 6, 10]) [array([0., 1., 2.]), array([3., 4.]), array([5.]), array([6., 7.]), array([], dtype=float64)]