numpy.vsplit#

numpy.vsplit(ary,indices_or_sections)[source]#

Split an array into multiple sub-arrays vertically (row-wise).

Please refer to thesplit documentation.vsplit is equivalenttosplit withaxis=0 (default), the array is always split along thefirst axis regardless of the array dimension.

See also

split

Split an array into multiple sub-arrays of equal size.

Examples

>>>importnumpyasnp>>>x=np.arange(16.0).reshape(4,4)>>>xarray([[ 0.,   1.,   2.,   3.],       [ 4.,   5.,   6.,   7.],       [ 8.,   9.,  10.,  11.],       [12.,  13.,  14.,  15.]])>>>np.vsplit(x,2)[array([[0., 1., 2., 3.],        [4., 5., 6., 7.]]), array([[ 8.,  9., 10., 11.],        [12., 13., 14., 15.]])]>>>np.vsplit(x,np.array([3,6]))[array([[ 0.,  1.,  2.,  3.],        [ 4.,  5.,  6.,  7.],        [ 8.,  9., 10., 11.]]), array([[12., 13., 14., 15.]]), array([], shape=(0, 4), dtype=float64)]

With a higher dimensional array the split is still along the first axis.

>>>x=np.arange(8.0).reshape(2,2,2)>>>xarray([[[0.,  1.],        [2.,  3.]],       [[4.,  5.],        [6.,  7.]]])>>>np.vsplit(x,2)[array([[[0., 1.],         [2., 3.]]]), array([[[4., 5.],         [6., 7.]]])]
On this page