python numpy 对数组进行拼接操作

2023-03-09 00:00:00 操作 数组 拼接

在NumPy中,可以使用numpy.concatenate()函数或numpy.vstack()函数或numpy.hstack()函数来对两个或多个数组进行拼接操作。

numpy.concatenate()函数接受一个由数组组成的元组或列表,并沿着指定的轴连接这些数组。以下是numpy.concatenate()函数的一般形式:

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

其中,a1、a2等是要连接的数组,axis参数表示要连接的轴。默认情况下,axis参数为0,表示沿着第一个轴连接数组。

numpy.vstack()函数可以在垂直方向(行)上对两个或多个数组进行堆叠操作。以下是numpy.vstack()函数的一般形式:

numpy.vstack(tup)

其中,tup是一个由数组组成的元组或列表。

numpy.hstack()函数可以在水平方向(列)上对两个或多个数组进行堆叠操作。以下是numpy.hstack()函数的一般形式:

numpy.hstack(tup)

以下是一些使用numpy.concatenate()函数、numpy.vstack()函数和numpy.hstack()函数进行数组拼接操作的示例:

import numpy as np

# 创建两个数组
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])

# 使用 concatenate() 函数进行拼接
concat_arr = np.concatenate((arr1, arr2), axis=0)
print("沿着第一个轴拼接的数组:\n", concat_arr)

# 使用 vstack() 函数进行拼接
vstack_arr = np.vstack((arr1, arr2))
print("垂直方向上拼接的数组:\n", vstack_arr)

# 使用 hstack() 函数进行拼接
hstack_arr = np.hstack((arr1, arr2))
print("水平方向上拼接的数组:\n", hstack_arr)

输出:

html 沿着第一个轴拼接的数组: [[1 2] [3 4] [5 6] [7 8]] 垂直方向上拼接的数组: [[1 2] [3 4] [5 6] [7 8]] 水平方向上拼接的数组: [[1 2 5 6] [3 4 7 8]]
在这个示例中,我们使用numpy.array()函数创建了两个2x2的数组。然后,我们使用numpy.concatenate()函数、numpy.vstack()函数和numpy.hstack()函数对这两个数组进行了拼接操作,并将结果打印到控制台上。从输出结果可以看出,三种方法都成功地将两个数组拼接在一起,但是拼接的方式略有不同。

相关文章