# mindspore.numpy.vsplit¶

mindspore.numpy.vsplit(x, indices_or_sections)[source]

Splits a tensor into multiple sub-tensors vertically (row-wise). It is equivalent to split with $$axis=0$$ (default), the array is always split along the first axis regardless of the array dimension.

Parameters
• x (Tensor) – A Tensor to be divided.

• indices_or_sections (Union[int, tuple(int), list(int)]) – If integer, $$N$$, the tensor will be divided into $$N$$ equal tensors along axis. If tuple(int), list(int) or of sorted integers, the entries indicate where along axis the array is split. For example, $$[2, 3]$$ would, for $$axis=0$$, result in three sub-tensors $$x[:2]$$, $$x[2:3]$$. If an index exceeds the dimension of the array along axis, an empty sub-array is returned correspondingly.

Returns

A list of sub-tensors.

Raises

TypeError – If argument indices_or_sections is not integer.

Supported Platforms:

Ascend GPU CPU

Examples

>>> import mindspore.numpy as np
>>> input_x = np.arange(9).reshape((3, 3)).astype('float32')
>>> output = np.vsplit(input_x, 3)
>>> print(output)
(Tensor(shape=[1, 3], dtype=Float32,
value=[[ 0.00000000e+00,  1.00000000e+00,  2.00000000e+00]]),
Tensor(shape=[1, 3], dtype=Float32,
value=[[ 3.00000000e+00,  4.00000000e+00,  5.00000000e+00]]),
Tensor(shape=[1, 3], dtype=Float32,
value=[[ 6.00000000e+00,  7.00000000e+00,  8.00000000e+00]]))