numpy.split¶
- numpy.split(ary, indices_or_sections, axis=0)[source]¶
Split an array into multiple sub-arrays.
Parameters: ary : ndarray
Array to be divided into sub-arrays.
indices_or_sections : int or 1-D array
If indices_or_sections is an integer, N, the array will be divided into N equal arrays along axis. If such a split is not possible, an error is raised.
If indices_or_sections is a 1-D array of sorted integers, the entries indicate where along axis the array is split. For example, [2, 3] would, for axis=0, result in
- ary[:2]
- ary[2:3]
- ary[3:]
If an index exceeds the dimension of the array along axis, an empty sub-array is returned correspondingly.
axis : int, optional
The axis along which to split, default is 0.
Returns: sub-arrays : list of ndarrays
A list of sub-arrays.
Raises: ValueError
If indices_or_sections is given as an integer, but a split does not result in equal division.
See also
- array_split
- Split an array into multiple sub-arrays of equal or near-equal size. Does not raise an exception if an equal division cannot be made.
- hsplit
- Split array into multiple sub-arrays horizontally (column-wise).
- vsplit
- Split array into multiple sub-arrays vertically (row wise).
- dsplit
- Split array into multiple sub-arrays along the 3rd axis (depth).
- concatenate
- Join arrays together.
- hstack
- Stack arrays in sequence horizontally (column wise).
- vstack
- Stack arrays in sequence vertically (row wise).
- dstack
- Stack arrays in sequence depth wise (along third dimension).
Examples
>>> 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)]