Python中给NumPy矩阵添加一列的三种实现方式
本文介绍在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矩阵添加一列的几种方法示例,希望对读者有所帮助。如有更多疑问或建议,欢迎留言交流。感兴趣的用户可继续查阅本站其他相关技术专题。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













