NumPy 连接数组

连接 NumPy 数组

连接意味着将两个或多个数组的内容放入一个数组中。

在 SQL 中,我们基于键来连接表,而在 NumPy 中,我们通过轴来连接数组。

我们将要连接的数组序列和轴一起传递给 concatenate() 函数。如果未显式传递轴,则默认为 0。

实例

连接两个数组:

import numpy as np

arr1 = np.array([1, 2, 3])

arr2 = np.array([4, 5, 6])

arr = np.concatenate((arr1, arr2))

print(arr)

亲自试一试

实例

沿行(axis=1)连接两个二维数组:

import numpy as np

arr1 = np.array([[1, 2], [3, 4]])

arr2 = np.array([[5, 6], [7, 8]])

arr = np.concatenate((arr1, arr2), axis=1)

print(arr)

亲自试一试

使用堆栈函数连接数组

堆叠与连接相同,唯一的区别是堆叠是沿着新轴完成的。

我们可以沿着第二个轴连接两个一维数组,这将导致它们一个接一个地放置,即堆叠。

我们将要连接的数组序列和轴一起传递给 stack() 方法。如果未显式传递轴,则默认为 0。

实例

import numpy as np

arr1 = np.array([1, 2, 3])

arr2 = np.array([4, 5, 6])

arr = np.stack((arr1, arr2), axis=1)

print(arr)

亲自试一试

沿行堆叠

NumPy 提供了一个辅助函数:hstack() 来沿行堆叠。

实例

import numpy as np

arr1 = np.array([1, 2, 3])

arr2 = np.array([4, 5, 6])

arr = np.hstack((arr1, arr2))

print(arr)

亲自试一试

沿列堆叠

NumPy 提供了一个辅助函数:vstack() 来沿列堆叠。

实例

import numpy as np

arr1 = np.array([1, 2, 3])

arr2 = np.array([4, 5, 6])

arr = np.vstack((arr1, arr2))

print(arr)

亲自试一试

沿高度(深度)堆叠

NumPy 提供了一个辅助函数:dstack() 来沿高度堆叠,该高度与深度相同。

实例

import numpy as np

arr1 = np.array([1, 2, 3])

arr2 = np.array([4, 5, 6])

arr = np.dstack((arr1, arr2))

print(arr)

亲自试一试