给numpy矩阵添加一列

首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵

 
  1. import numpy as np

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

  3. b = np.ones(3)

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

  5. PRint(a)

  6. print(b)

  7. print(c)

  8.  
  9. [[1 2 3]

  10. [4 5 6]

  11. [7 8 9]]

  12. [ 1. 1. 1.]

  13. [[1 2 3 1]

  14. [4 5 6 1]

  15. [7 8 9 1]]

我们要做的就是把a,b合起来变成c

方法一

使用np.c_[]np.r_[]分别添加行和列

 
  1. np.c_[a,b]

  2.  
  3.  
  4.  
  5.  
  6. array([[ 1., 2., 3., 1.],

  7. [ 4., 5., 6., 1.],

  8. [ 7., 8., 9., 1.]])

  9.  
  10.  
  11.  
  12.  
  13. np.c_[a,a]

  14.  
  15.  
  16.  
  17.  
  18. array([[1, 2, 3, 1, 2, 3],

  19. [4, 5, 6, 4, 5, 6],

  20. [7, 8, 9, 7, 8, 9]])

  21.  
  22.  
  23.  
  24.  
  25. np.c_[b,a]

  26.  
  27.  
  28.  
  29.  
  30. array([[ 1., 1., 2., 3.],

  31. [ 1., 4., 5., 6.],

  32. [ 1., 7., 8., 9.]])

方法二

使用np.insert

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

  2.  
  3.  
  4.  
  5.  
  6. array([[1, 1, 2, 3],

  7. [1, 4, 5, 6],

  8. [1, 7, 8, 9]])

  9.  
  10.  
  11.  
  12.  
  13. np.insert(a, 3, values=b, axis=1)

  14.  
  15.  
  16.  
  17.  
  18. array([[1, 2, 3, 1],

  19. [4, 5, 6, 1],

  20. [7, 8, 9, 1]])

方法三

使用'column_stack'

 
  1. np.column_stack((a,b))

  2.  
  3.  
  4.  
  5.  
  6. array([[ 1., 2., 3., 1.],

  7. [ 4., 5., 6., 1.],

  8. [ 7., 8., 9., 1.]])

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值