numpy.split#
- numpy.split(ary, indices_or_sections, axis=0)[source]#
将数组拆分为多个子数组,作为 ary 的视图。
- 参数::
- aryndarray
要划分为子数组的数组。
- indices_or_sectionsint 或 1-D 数组
如果 indices_or_sections 是一个整数 N,则该数组将沿 axis 划分为 N 个相等的数组。如果无法进行此类拆分,则会引发错误。
如果 indices_or_sections 是一个排序整数的 1-D 数组,则条目指示数组沿 axis 的拆分位置。例如,
[2, 3]
将在axis=0
时产生以下结果:ary[:2]
ary[2:3]
ary[3:]
如果索引超过数组沿 axis 的维度,则将返回相应的空子数组。
- axisint,可选
要拆分的轴,默认为 0。
- 返回值::
- sub-arraysndarrays 列表
作为 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)]