NumPy合并两个数组(3个函数)
在 NumPy 中,连接(合并)数组是一项常见的操作,它允许我们将多个数组组合成一个更大的数组。
以下是一些常用的 NumPy 函数,用于连接数组:
1) concatenate()函数用于沿指定轴连接相同形状的多个数组对象,其语法格式如下:
2) hstack() 函数用于沿 1 轴堆叠多个数组对象,其语法格式如下:
3) vstack() 函数用于沿 0 轴堆叠多个数组对象,其语法格式如下:
示例代码如下:
运行结果为:
以下是一些常用的 NumPy 函数,用于连接数组:
1) concatenate()函数用于沿指定轴连接相同形状的多个数组对象,其语法格式如下:
concatenate(ndarrays,axis)其中,参数 ndarrays 表示待连接的多个数组对象所组成的元组;参数 axis 表示数组对象的轴索引,该参数为可选参数,其默认值为 0。
2) hstack() 函数用于沿 1 轴堆叠多个数组对象,其语法格式如下:
hstack(ndarrays)其中,参数 ndarrays 表示待连接的多个数组对象所组成的元组。
3) vstack() 函数用于沿 0 轴堆叠多个数组对象,其语法格式如下:
vstack(ndarrays)其中,参数 ndarrays 表示待连接的多个数组对象所组成的元组。
示例代码如下:
import numpy as np # 一维数组对象 al = np.array([1, 2, 3, 4, 5]) a2 = np.array([6, 7, 8, 9, 10]) print(np.concatenate((al, a2))) print('===================') print(np.hstack((al, a2))) print('===================') print(np.vstack((al, a2))) print('===================') # 二维数组对象 b1 = np.array([[1, 2], [3, 4]]) b2 = np.array([[5, 6], [7, 8]]) print(np.concatenate((b1, b2))) print(np.concatenate((b1, b2), axis=1)) print('===================') print(np.hstack((b1, b2))) print('===================') print(np.vstack((b1, b2))) print('===================') # 三维数组对象 c1 = np.array([[[1, 2, 3], [4, 5, 6], [7, 8, 9]]], [[[10, 11, 12], [13, 14, 15], [16, 17, 18]]]) c2 = np.array([[[19, 20, 21], [22, 23, 24], [25, 26, 27]]], [[[28, 29, 30], [31, 32, 33], [34, 35, 36]]]) print(np.concatenate((c1, c2))) print('===================') print(np.concatenate((c1, c2), axis=1)) print('===================') print(np.concatenate((c1, c2), axis=2)) print('===================') print(np.hstack((c1, c2))) print('===================') print(np.vstack((c1, c2)))
运行结果为:
[1 2 3 4 5 6 7 8 9 10] =================== [[ 1 2 6 7 8 9 10] [ 3 4 5 5 6 7 11 12]] =================== [[ 1 2 3 4 5 6 7 8] [ 3 4 5 6 7 8 9 10]] =================== [[1 2 3 4 5] [3 4 5 6 7] [5 6 7 8 9] [7 8 9 10]] =================== [[1 2 5 6] [3 4 7 8]] =================== [[1 2] [3 4] [5 6] [7 8]] =================== [[1 2 5 6] [3 4 7 8]] =================== [[[ 1 2 3] [ 4 5 6] [ 7 8 9] [10 11 12] [13 14 15] [16 17 18] [19 20 21] [22 23 24] [25 26 27] [28 29 30] [31 32 33] [34 35 36]] [[[19 20 21] [22 23 24] [25 26 27] [28 29 30] [31 32 33] [34 35 36]]] =================== [[[ 1 2 3 4 ... 19 20 21] [ 4 5 6 7 ... 22 23 24] [ 7 8 9 10 ... 25 26 27] [10 11 12 13 ... 28 29 30] [13 14 15 16 ... 31 32 33] [16 17 18 19 ... 34 35 36]]] [[[ 1 2 3 4 ... 7 8 9] [ 5 6 7 8 ... 11 12 13] [10 11 12 13 ... 14 15 16] [13 14 15 16 ... 17 18 19] [16 17 18 19 ... 20 21 22] [19 20 21 22 ... 23 24 25] [22 23 24 25 ... 26 27 28] [25 26 27 28 ... 29 30 31] [28 29 30 31 ... 32 33 34] [31 32 33 34 ... 35 36]]] =================== [[[ 1 2] [ 3 4] [ 5 6] [ 7 8] [ 9 10] [11 12] [13 14] [15 16] [17 18] [19 20] [21 22] [23 24] [25 26] [27 28] [29 30] [31 32] [33 34] [35 36]]] [[[ 1 2 3 4 5 6 7 8] [ 3 4 5 6 7 8 9 10] [ 5 6 7 8 9 10 11 12] [ 7 8 9 10 11 12 13 14] [10 11 12 13 14 15 16 17] [13 14 15 16 17 18 19 20] [16 17 18 19 20 21 22 23] [19 20 21 22 23 24 25 26] [22 23 24 25 26 27 28 29] [25 26 27 28 29 30 31 32] [28 29 30 31 32 33 34 35] [31 32 33 34 35 36]]]