zoukankan      html  css  js  c++  java
  • 给numpy矩阵添加一列

    问题的定义:

    首先我们有一个数据是一个mn的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.]])
  • 相关阅读:
    撕裂寂寞
    创业中的“孙子兵法”
    生命的颜色占卜
    常常激励我们的36句话
    创建自己的3D虚拟身体!
    富人和穷人的八大差异
    有时,孤单是一种享受
    JavaScript类
    上网的十条基本礼节
    程序设计中的感悟
  • 原文地址:https://www.cnblogs.com/MrLJC/p/4823499.html
Copyright © 2011-2022 走看看