np.concatenate(arrays, axis=None)函数,可以将多个数组按一定规则组合到一起。arrays可以是多个数组,axis是选择组合维度的参数。
组合三个一维数组:
import numpy as np
A = np.array([1] * 3)
B = np.array([2] * 3)
C = np.array([3] * 3)
print("数组A:", A)
print("数组B:", B)
print("数组C:", C)
D = np.concatenate((A, B, C))
print("数组ABC组合的结果:", D)
运行结果:
数组A: [1 1 1]
数组B: [2 2 2]
数组C: [3 3 3]
数组ABC组合的结果: [1 1 1 2 2 2 3 3 3]
一维数组组合时,axis参数使用默认的axis=0就可以,axis=1会报错,numpy.AxisError: axis 1 is out of bounds for array of dimension 1。
按列组合三个二维数组:
import numpy as np
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
C = np.array([[9, 10], [11, 12]])
print("数组A:", A)
print("数组B:", B)
print("数组C:", C)
D = np.concatenate((A, B, C), axis=0) # 按列组合axis=0。
print("数组ABC组合的结果:", D)
运行结果:
数组A: [[1 2]
[3 4]]
数组B: [[5 6]
[7 8]]
数组C: [[ 9 10]
[11 12]]
数组ABC组合的结果: [[ 1 2]
[ 3 4]
[ 5 6]
[ 7 8]
[ 9 10]
[11 12]]
按行组合三个二维数组:
import numpy as np
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
C = np.array([[9, 10], [11, 12]])
print("数组A:", A)
print("数组B:", B)
print("数组C:", C)
D = np.concatenate((A, B, C), axis=1) # 按行组合axis=1。
print("数组ABC组合的结果:", D)
运行结果:
数组A: [[1 2]
[3 4]]
数组B: [[5 6]
[7 8]]
数组C: [[ 9 10]
[11 12]]
数组ABC组合的结果: [[ 1 2 5 6 9 10]
[ 3 4 7 8 11 12]]