上一个主题

numpy.require

下一个主题

numpy.stack

numpy.concatenate ¶ T0>

numpy.concatenate((a1, a2, ...), axis=0)

沿一个已存在的轴连接一系列阵列。

参数:

a1, a2, ...:array_like 序列

axis维度外(默认情况下为第一个轴),这些数组必须具有相同的形状。

axis:int,可选

数组将要连接的轴。缺省值是0。

返回:

res:ndarray

连接后的数组。

另见

ma.concatenate
连接保留输入掩码的功能。
array_split
将一个数组分成多个相同或近似相等的子数组。
split
将数组拆分成大小相同的多个子数组列表。
hsplit
将数组水平分割为多个子数组(列明智)
vsplit
将数组分成多个子数组(垂直)
dsplit
将数组拆分为沿第3轴(深度)的多个子数组。
stack
沿着一个新轴连接一系列数组。
hstack
按顺序堆叠数组(以列为单位)
vstack
按顺序堆叠数组(按行)
dstack
按顺序堆叠数组(沿第三维)

当要连接的一个或多个数组是一个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]])

该函数不会保留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)