flopscope.

flopscope.numpy.split

fnp.split(ary, indices_or_sections, axis=0)[flopscope source][numpy source]

Split an array into multiple sub-arrays as views into `ary`.

Adapted from NumPy docs np.split

Areacore
Typefree
NumPy Refnp.split
Cost
0
Flopscope Context

Split array into sub-arrays. Cost: numel(output).

Split an array into multiple sub-arrays as views into ary.

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 as views into ary.

Raises

:ValueError

If indices_or_sections is given as an integer, but a split does not result in equal division.

See also

Examples

>>> import flopscope.numpy as fnp
>>> x = flops.arange(9.0)
>>> flops.split(x, 3)
[array([0.,  1.,  2.]), array([3.,  4.,  5.]), array([6.,  7.,  8.])]
>>> x = flops.arange(8.0)
>>> flops.split(x, [3, 5, 6, 10])
[array([0.,  1.,  2.]),
 array([3.,  4.]),
 array([5.]),
 array([6.,  7.]),
 array([], dtype=float64)]