numpy.concatenate#
- numpy.concatenate((a1, a2, ...), axis=0, out=None, dtype=None, casting="same_kind")#
沿现有轴连接数组序列.
- 参数:
- a1, a2, …array_like 序列
数组必须具有相同的形状,除了与 axis 对应的维度(默认为第一个).
- 轴int, optional
数组将沿其连接的轴.如果axis为None,则在使用前将数组展平.默认为0.
- outndarray,可选
如果提供,则放置结果的目标位置.形状必须正确,与不指定 out 参数时 concatenate 将返回的形状相匹配.
- dtypestr 或 dtype
如果提供,目标数组将具有该 dtype.不能与 out 一起提供.
在 1.20.0 版本加入.
- casting{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’},可选
控制可能发生的数据类型转换的种类.默认为 ‘same_kind’.有关选项的说明,请参阅 casting .
在 1.20.0 版本加入.
- 返回:
- resndarray
连接后的数组.
参见
ma.concatenate保留输入掩码的连接函数.
array_split将一个数组分割成多个大小相等或接近相等的子数组.
split将数组分割成多个大小相等的子数组的列表.
hsplit将数组水平(按列)分割成多个子数组.
vsplit将数组垂直(按行)分割成多个子数组.
dsplit将数组沿第三个轴(深度)分割成多个子数组.
stack沿新轴堆叠数组序列.
block从块组装数组.
hstack按水平方向(按列)顺序堆叠数组.
vstack按垂直方向(按行)顺序堆叠数组.
dstack按深度(沿第三维)按顺序堆叠数组.
column_stack将 1-D 数组作为列堆叠到 2-D 数组中.
注释
当要连接的一个或多个数组是 MaskedArray 时,此函数将返回一个 MaskedArray 对象,而不是 ndarray,但输入掩码不会被保留.如果预期输入为 MaskedArray,请改用 masked array 模块中的 ma.concatenate 函数.
示例
>>> import numpy as np >>> a = np.array([[1, 2], [3, 4]]) >>> b = np.array([[5, 6]]) >>> np.concatenate((a, b), axis=0) array([[1, 2], [3, 4], [5, 6]]) >>> np.concatenate((a, b.T), axis=1) array([[1, 2, 5], [3, 4, 6]]) >>> np.concatenate((a, b), axis=None) array([1, 2, 3, 4, 5, 6])
此函数不会保留 MaskedArray 输入的掩码.
>>> a = np.ma.arange(3) >>> a[1] = np.ma.masked >>> b = np.arange(2, 5) >>> a masked_array(data=[0, --, 2], mask=[False, True, False], fill_value=999999) >>> b array([2, 3, 4]) >>> np.concatenate([a, b]) masked_array(data=[0, 1, 2, 2, 3, 4], mask=False, fill_value=999999) >>> np.ma.concatenate([a, b]) masked_array(data=[0, --, 2, 2, 3, 4], mask=[False, True, False, False, False, False], fill_value=999999)