# numpy.ma.hsplit#

ma.hsplit = <numpy.ma.extras._fromnxfunction_single object>#

hsplit

Split an array into multiple sub-arrays horizontally (column-wise).

Please refer to the `split` documentation. `hsplit` is equivalent to `split` with `axis=1`, the array is always split along the second axis except for 1-D arrays, where it is split at `axis=0`.

`split`

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

Notes

The function is applied to both the _data and the _mask, if any.

Examples

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

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

```>>> x = np.arange(8.0).reshape(2, 2, 2)
>>> x
array([[[0.,  1.],
[2.,  3.]],
[[4.,  5.],
[6.,  7.]]])
>>> np.hsplit(x, 2)
[array([[[0.,  1.]],
[[4.,  5.]]]),
array([[[2.,  3.]],
[[6.,  7.]]])]
```

With a 1-D array, the split is along axis 0.

```>>> x = np.array([0, 1, 2, 3, 4, 5])
>>> np.hsplit(x, 2)
[array([0, 1, 2]), array([3, 4, 5])]
```