numpy.split#
- numpy.split(ary, indices_or_sections, axis=0)[源代码]#
将数组拆分为多个子数组,作为 ary 的视图.
- 参数:
- aryndarray
要被划分为子数组的数组.
- indices_or_sectionsint 或 1-D 数组
如果 indices_or_sections 是一个整数 N,则数组将沿 axis 被划分为 N 个相等的数组.如果无法进行此类分割,则会引发错误.
如果 indices_or_sections 是一个已排序整数的 1-D 数组,则条目指示沿 axis 数组的分割位置.例如,对于
axis=0,[2, 3]将导致ary[:2]
ary[2:3]
ary[3:]
如果索引超出数组沿 axis 的维度,则相应地返回一个空子数组.
- axis整数,可选
沿其分割的轴,默认为 0.
- 返回:
- 子数组ndarray 的列表
子数组的列表,作为 ary 的视图.
- 提出:
- ValueError
如果 indices_or_sections 给定为一个整数,但分割不会导致相等分割.
参见
array_split将数组拆分为大小相等或接近相等的多个子数组.如果无法进行相等分割,则不会引发异常.
hsplit将数组水平(按列)拆分为多个子数组.
vsplit将数组垂直(按行)分割成多个子数组.
dsplit沿第 3 轴(深度)将数组分割成多个子数组.
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)]