zoukankan      html  css  js  c++  java
  • numpy中的delete,insert,append函数

    delete

    numpy.delete(arr,obj,axis=None)
    arr:输入向量
    obj:表明哪一个子向量应该被移除。可以为整数或一个int型的向量
    axis:表明删除哪个轴的子向量,若默认,则返回一个被拉平的向量

    a = np.array(np.arange(12).reshape(3,4))
    
    a
    array([[ 0,  1,  2,  3],
           [ 4,  5,  6,  7],
           [ 8,  9, 10, 11]])
    
    np.delete(a,1,0)
    array([[ 0,  1,  2,  3],
           [ 8,  9, 10, 11]])
    
    np.delete(a,1,1)
    array([[ 0,  2,  3],
           [ 4,  6,  7],
           [ 8, 10, 11]])
    
    np.delete(a,[0,1],1)
    array([[ 2,  3],
           [ 6,  7],
           [10, 11]])
    
    np.delete(a,np.s_[::2],1)
    array([[ 1,  3],
           [ 5,  7],
           [ 9, 11]])
    

    注意:
    numpy.s_[::2]表示选取奇数。

    insert

    numpy.insert(arr,obj,value,axis=None)
    同理,value为插入的数值
    arr:为目标向量
    obj:为目标位置
    value:为想要插入的数值
    axis:为插入的维度

    np.insert(a,1,[1,1,1,1],0)
    Out[309]: 
    array([[ 0,  1,  2,  3],
           [ 1,  1,  1,  1],
           [ 4,  5,  6,  7],
           [ 8,  9, 10, 11]])
    

    append

    numpu.append(arr,values,axis=None)
    将values插入到目标arr的最后。
    注意,这里values跟arr应该为相同维度的向量,例如,如下第一个为错误情况。

    a
    Out[310]: 
    array([[ 0,  1,  2,  3],
           [ 4,  5,  6,  7],
           [ 8,  9, 10, 11]])
    
    np.append(a,[1,1,1,1],axis=0)
    Traceback (most recent call last):
    
      File "<ipython-input-311-5585d9489cff>", line 1, in <module>
        np.append(a,[1,1,1,1],axis=0)
    
      File "D:Anacondalibsite-packages
    umpylibfunction_base.py", line 4586, in append
        return concatenate((arr, values), axis=axis)
    
    ValueError: all the input arrays must have same number of dimensions
    

    正确形式为

    a
    Out[312]: 
    array([[ 0,  1,  2,  3],
           [ 4,  5,  6,  7],
           [ 8,  9, 10, 11]])
    
    np.append(a,[[1,1,1,1]],axis=0)
    Out[313]: 
    array([[ 0,  1,  2,  3],
           [ 4,  5,  6,  7],
           [ 8,  9, 10, 11],
           [ 1,  1,  1,  1]])
    

    转载自:
    作者:开贰锤
    来源:CSDN
    原文:https://blog.csdn.net/weixin_37895339/article/details/78442555
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    vue:路由实现原理
    webpack自定义loader和自定义插件
    JS常见的算法
    浅析DES、AES、RSA、MD5加密算法及其应用场景
    关于JSON.parse(JSON.stringify(obj))实现深拷贝应该注意的坑
    Canvas和SVG区别
    解决 webpack 打包文件体积过大
    箭头函数与普通函数的区别
    2.Linux基础命令
    1.Ubuntu系统与vmware虚拟机的安装与使用
  • 原文地址:https://www.cnblogs.com/lucky75/p/11173717.html
Copyright © 2011-2022 走看看