加入 NumPy 数组
NumPy 提供了各种函数来组合数组。在本文中,我们将讨论一些主要的。
- numpy.concatenate
- numpy.stack
- numpy.block
方法一:使用numpy.concatenate()
NumPy 中的 concatenate函数沿指定的轴连接两个或多个数组。
句法:
numpy.concatenate((array1, array2, ...), axis=0)
第一个参数是我们打算连接的数组元组,第二个参数是我们需要沿其连接这些数组的轴。查看以下示例,显示 numpy.concatenate 的使用。
Python3
import numpy as np
array_1 = np.array([1, 2])
array_2 = np.array([3, 4])
array_new = np.concatenate((array_1, array_2))
print(array_new)
Python3
import numpy as np
array_1 = np.array([[1, 2], [3, 4]])
array_2 = np.array([[5, 6], [7, 8]])
array_new = np.concatenate((array_1, array_2), axis=1)
print(array_new)
Python3
import numpy as np
array_1 = np.array([1, 2, 3, 4])
array_2 = np.array([5, 6, 7, 8])
array_new = np.stack((array_1, array_2), axis=1)
print(array_new)
Python3
import numpy as np
block_1 = np.array([[1, 1], [1, 1]])
block_2 = np.array([[2, 2, 2], [2, 2, 2]])
block_3 = np.array([[3, 3], [3, 3], [3, 3]])
block_4 = np.array([[4, 4, 4], [4, 4, 4], [4, 4, 4]])
block_new = np.block([
[block_1, block_2],
[block_3, block_4]
])
print(block_new)
输出:
[1 2 4 5]
默认情况下,轴的值设置为 0。您可以通过在第二个参数中指定轴的值来更改它。以下代码沿行连接两个数组。
蟒蛇3
import numpy as np
array_1 = np.array([[1, 2], [3, 4]])
array_2 = np.array([[5, 6], [7, 8]])
array_new = np.concatenate((array_1, array_2), axis=1)
print(array_new)
输出:
[[1 2 5 6]
[3 4 7 8]]
方法 2:使用numpy.stack()
NumPy 的 stack()函数沿新轴连接两个或多个数组。
句法:
numpy.stack(arrays, axis=0)
以下代码演示了 numpy.stack() 的使用。
蟒蛇3
import numpy as np
array_1 = np.array([1, 2, 3, 4])
array_2 = np.array([5, 6, 7, 8])
array_new = np.stack((array_1, array_2), axis=1)
print(array_new)
输出:
[[1 5]
[2 6]
[3 7]
[4 8]]
阵列沿新轴连接。
方法三:numpy.block()
numpy.block 用于从嵌套的列表块创建 nd 数组。
句法:
numpy.block(arrays)
下面的例子解释了 numpy.block() 的工作。
蟒蛇3
import numpy as np
block_1 = np.array([[1, 1], [1, 1]])
block_2 = np.array([[2, 2, 2], [2, 2, 2]])
block_3 = np.array([[3, 3], [3, 3], [3, 3]])
block_4 = np.array([[4, 4, 4], [4, 4, 4], [4, 4, 4]])
block_new = np.block([
[block_1, block_2],
[block_3, block_4]
])
print(block_new)
输出:
[[1 1 2 2 2]
[1 1 2 2 2]
[3 3 4 4 4]
[3 3 4 4 4]
[3 3 4 4 4]]
在这个例子中,我们从 4 个独立的二维数组 (block_1,block_2,block_3,block_4) 组装了一个块矩阵 (block_new)。