numpy.concatenate()用于沿指定轴连接数组,要求非连接轴维度形状一致。一维数组只能axis=0拼接;二维数组可按axis=0(行)或axis=1(列)拼接,需保证对应维度匹配,否则报错。支持两个以上数组连接,也可用np.vstack()和np.hstack()简化操作。

numpy.concatenate() 是 NumPy 中用于沿指定轴连接多个数组的函数。它要求所有输入数组除了指定轴外,其余维度的形状必须一致。
基本语法
numpy.concatenate((a1, a2, ...), axis=0)- a1, a2, ...:需要连接的数组,用元组或列表传入,至少两个
- axis:沿着哪个轴进行连接,默认为 0(即第一维)
一维数组拼接
对于一维数组,只能沿 axis=0 拼接:
import numpy as npa = np.array([1, 2, 3])
b = np.array([4, 5, 6])
result = np.concatenate((a, b))
print(result) # [1 2 3 4 5 6]
二维数组按行或列拼接
二维数组可以按行(axis=0)或按列(axis=1)拼接:
a = np.array([[1, 2], [3, 4]])b = np.array([[5, 6]])
# 按行拼接(上下堆叠) result1 = np.concatenate((a, b), axis=0)
print(result1)
# [[1 2]
# [3 4]
# [5 6]]
按列拼接(左右拼接),注意 b 需要转成列向量或调整形状
b_col = np.array([[5], [6]])
result2 = np.concatenate((a, b_col), axis=1)
print(result2)
[[1 2 5]
[3 4 6]]
本文档主要讲述的是Python之模块学习;python是由一系列的模块组成的,每个模块就是一个py为后缀的文件,同时模块也是一个命名空间,从而避免了变量名称冲突的问题。模块我们就可以理解为lib库,如果需要使用某个模块中的函数或对象,则要导入这个模块才可以使用,除了系统默认的模块(内置函数)不需要导入外。希望本文档会给有需要的朋友带来帮助;感兴趣的朋友可以过来看看
立即学习“Python免费学习笔记(深入)”;
常见注意事项
- 参与拼接的数组必须在非连接轴上的维度大小一致
- 如果维度不匹配会报错:ValueError: all the input arrays must have same number of dimensions and shape
- 可以连接两个以上数组:np.concatenate((a, b, c))
- 对于常见的垂直和水平拼接,也可以使用 np.vstack() 和 np.hstack() 简化操作
基本上就这些,掌握 axis 参数和形状匹配原则就能正确使用 concatenate。










