numpy.concatenate¶
-
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作为输入的情况下,请使用来自屏蔽数组模块的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)