numpy.concatenate #

麻木的。连接( (a1 , a2 , ...) , axis=0 , out=None , dtype=None , casting="same_kind" ) #

沿现有轴连接一系列数组。

参数
a1, a2, ... array_like 序列

数组必须具有相同的形状,除了与对应的维度(默认情况下为第一个)。

int,可选

阵列将沿其连接的轴。如果 axis 为 None,则数组在使用前会被展平。默认值为 0。

输出ndarray,可选

如果提供,则为放置结果的目的地。形状必须正确,与未指定输出参数时连接返回的形状相匹配。

dtype str 或 dtype

如果提供,目标数组将具有此数据类型。不能与out一起提供。

1.20.0 版本中的新增功能。

强制转换{'no', 'equiv', 'safe', 'same_kind', 'unsafe'},可选

控制可能发生的数据转换类型。默认为“same_kind”。

1.20.0 版本中的新增功能。

返回
res ndarray

连接数组。

也可以看看

ma.concatenate

保留输入掩码的连接函数。

array_split

将数组拆分为多个大小相等或接近相等的子数组。

split

将数组拆分为多个大小相等的子数组的列表。

hsplit

将数组水平拆分为多个子数组(按列)。

vsplit

将数组垂直(按行)拆分为多个子数组。

dsplit

沿第三轴(深度)将数组拆分为多个子数组。

stack

沿新轴堆叠一系列数组。

block

从块组装数组。

hstack

按水平顺序堆叠数组(按列)。

vstack

垂直(按行)顺序堆叠数组。

dstack

按深度顺序(沿第三维)堆叠数组。

column_stack

将一维数组作为列堆叠到二维数组中。

笔记

当要连接的一个或多个数组是 MaskedArray 时,此函数将返回一个 MaskedArray 对象而不是 ndarray,但不会保留输入掩码。如果需要 MaskedArray 作为输入,请改用 masked array 模块中的 ma.concatenate 函数。

例子

>>> 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)