numpy.ma.hsplit#
- ma.hsplit = <numpy.ma.extras._fromnxfunction_single object>#
将数组水平(按列)拆分为多个子数组。
请参考
split
文档。hsplit
等同于split
且axis=1
,数组始终沿第二轴拆分,除了 1 维数组,它在axis=0
处拆分。另请参见
split
将数组拆分为多个大小相同的子数组。
注释
该函数同时应用于 _data 和 _mask(如果有)。
示例
>>> import numpy as np >>> 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)]
对于更高维度的数组,拆分仍然沿第二轴。
>>> 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.]]])]
对于 1 维数组,拆分沿轴 0。
>>> x = np.array([0, 1, 2, 3, 4, 5]) >>> np.hsplit(x, 2) [array([0, 1, 2]), array([3, 4, 5])]