numpy.unstack#
- numpy.unstack(x, /, *, axis=0)[源代码]#
沿给定轴将数组拆分为数组序列.
axis参数指定将沿其拆分数组的维度. 例如,如果axis=0(默认),则它将是第一个维度,如果axis=-1,它将是最后一个维度.结果是沿
axis拆分的数组的元组.在 2.1.0 版本加入.
- 参数:
- xndarray
要取消堆叠的数组.
- axis整数,可选
数组将沿其拆分的轴. 默认值:
0.
- 返回:
- 取消堆叠ndarray的元组
取消堆叠的数组.
参见
stack沿新轴连接一系列数组.
concatenate沿现有轴连接一系列数组.
block从嵌套的块列表中组装一个 nd-array.
split将数组分割成一个等大小的子数组列表.
注释
unstack用作stack的反向操作,即stack(unstack(x, axis=axis), axis=axis) == x.此函数等价于
tuple(np.moveaxis(x, axis, 0)),因为在数组上进行迭代会沿着第一个轴进行.示例
>>> arr = np.arange(24).reshape((2, 3, 4)) >>> np.unstack(arr) (array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]]), array([[12, 13, 14, 15], [16, 17, 18, 19], [20, 21, 22, 23]])) >>> np.unstack(arr, axis=1) (array([[ 0, 1, 2, 3], [12, 13, 14, 15]]), array([[ 4, 5, 6, 7], [16, 17, 18, 19]]), array([[ 8, 9, 10, 11], [20, 21, 22, 23]])) >>> arr2 = np.stack(np.unstack(arr, axis=1), axis=1) >>> arr2.shape (2, 3, 4) >>> np.all(arr == arr2) np.True_