• python中numpy.concatenate()函数的使用


    numpy库数组拼接np.concatenate

    原文:https://blog.csdn.net/zyl1042635242/article/details/43162031 

    思路:numpy提供了numpy.concatenate((a1,a2,...), axis=0)函数。能够一次完成多个数组的拼接。其中a1,a2,...是数组类型的参数

    示例3:

    >>> a=np.array([1,2,3])
    >>> b=np.array([11,22,33])
    >>> c=np.array([44,55,66])
    >>> np.concatenate((a,b,c),axis=0)  # 默认情况下,axis=0可以不写
    array([ 1,  2,  3, 11, 22, 33, 44, 55, 66]) #对于一维数组拼接,axis的值不影响最后的结果

    >>> a=np.array([[1,2,3],[4,5,6]])
    >>> b=np.array([[11,21,31],[7,8,9]])
    >>> np.concatenate((a,b),axis=0)
    array([[ 1,  2,  3],
           [ 4,  5,  6],
           [11, 21, 31],
           [ 7,  8,  9]])

    >>> np.concatenate((a,b),axis=1)  #axis=1表示对应行的数组进行拼接
    array([[ 1,  2,  3, 11, 21, 31],
           [ 4,  5,  6,  7,  8,  9]])

    对numpy.append()和numpy.concatenate()两个函数的运行时间进行比较

    示例:

    >>> from time import clock as now
    >>> a=np.arange(9999)
    >>> b=np.arange(9999)
    >>> time1=now()
    >>> c=np.append(a,b)
    >>> time2=now()
    >>> print time2-time1
    28.2316728446
    >>> a=np.arange(9999)
    >>> b=np.arange(9999)
    >>> time1=now()
    >>> c=np.concatenate((a,b),axis=0)
    >>> time2=now()
    >>> print time2-time1
    20.3934997107

    可知,concatenate()效率更高,适合大规模的数据拼接

  • 相关阅读:
    golang学习笔记 ---面向并发的内存模型
    使用airdrop进行文件共享
    Sense编辑器(Sense Editor)
    Spring Boot + Spring Data + Elasticsearch实例
    ElasticSearch位置搜索
    批量修改mp3文件的title等
    ElasticSearch reindex报错:the final mapping would have more than 1 type
    Mac下安装SecureCRT并激活
    Mac快捷键
    ​Mac触控板常用的手势操作
  • 原文地址:https://www.cnblogs.com/shueixue/p/10953699.html
Copyright © 2020-2023  润新知