Python中给NumPy矩阵添加一列的三种实现方式

Finn
Finn
发布时间:2026-10-13 | 2人浏览过
原创

本文介绍在Python中如何将NumPy矩阵增加一列,使其从m×n变为m×(n+1)。通过三种方法:利用np.c_与np.r_、np.insert函数以及column_stack,展示具体的代码实现与参数设置,帮助开发者灵活处理矩阵结构变换。

首先,假设我们拥有一个形状为m×n的NumPy矩阵,目标是为其添加一列,从而将其转换为形状为m×(n+1)的矩阵。

import numpy as np
a = np.array([[1,2,3],[4,5,6],[7,8,9]])
b = np.ones(3)
c = np.array([[1,2,3,1],[4,5,6,1],[7,8,9,1]])
PRint(a)
print(b)
print(c)

[[1 2 3]
 [4 5 6]
 [7 8 9]]
[ 1. 1. 1.]
[[1 2 3 1]
 [4 5 6 1]
 [7 8 9 1]]

具体操作是将矩阵a与向量b合并,生成新的矩阵c。

方法一

利用np.c_[]和np.r_[]分别实现列和行的添加

np.c_[a,b]

array([[ 1., 2., 3., 1.],
    [ 4., 5., 6., 1.],
    [ 7., 8., 9., 1.]])

np.c_[a,a]

array([[1, 2, 3, 1, 2, 3],
    [4, 5, 6, 4, 5, 6],
    [7, 8, 9, 7, 8, 9]])

np.c_[b,a]

array([[ 1., 1., 2., 3.],
    [ 1., 4., 5., 6.],
    [ 1., 7., 8., 9.]])

方法二

利用np.insert函数

np.insert(a, 0, values=b, axis=1)

array([[1, 1, 2, 3],
    [1, 4, 5, 6],
    [1, 7, 8, 9]])

np.insert(a, 3, values=b, axis=1)

array([[1, 2, 3, 1],
    [4, 5, 6, 1],
    [7, 8, 9, 1]])

方法三

利用'column_stack'函数

np.column_stack((a,b))

array([[ 1., 2., 3., 1.],
    [ 4., 5., 6., 1.],
    [ 7., 8., 9., 1.]])

总结

以上介绍了Python中给NumPy矩阵添加一列的几种方法示例,希望对读者有所帮助。如有更多疑问或建议,欢迎留言交流。感兴趣的用户可继续查阅本站其他相关技术专题。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表