最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

numpy concatenate數(shù)組拼接方法示例介紹

 更新時間:2019年05月27日 10:19:36   作者:會飛的小罐子  
這篇文章主要介紹了numpy concatenate數(shù)組拼接方法示例介紹,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

數(shù)組拼接方法一

思路:首先將數(shù)組轉(zhuǎn)成列表,然后利用列表的拼接函數(shù)append()、extend()等進(jìn)行拼接處理,最后將列表轉(zhuǎn)成數(shù)組。

示例1:

>>> import numpy as np
>>> a=np.array([1,2,5])
>>> b=np.array([10,12,15])
>>> a_list=list(a)
>>> b_list=list(b)

>>> a_list.extend(b_list)

>>> a_list
[1, 2, 5, 10, 12, 15]
>>> a=np.array(a_list)
>>> a
array([ 1, 2, 5, 10, 12, 15])

該方法只適用于簡單的一維數(shù)組拼接,由于轉(zhuǎn)換過程很耗時間,對于大量數(shù)據(jù)的拼接一般不建議使用。 

數(shù)組拼接方法二

思路:numpy提供了numpy.append(arr, values, axis=None)函數(shù)。對于參數(shù)規(guī)定,要么一個數(shù)組和一個數(shù)值;要么兩個數(shù)組,不能三個及以上數(shù)組直接append拼接。

示例2:

>>> a=np.arange(5)
>>> a
array([0, 1, 2, 3, 4])
>>> np.append(a,10)
array([ 0, 1, 2, 3, 4, 10])
>>> a
array([0, 1, 2, 3, 4])

 

>>> b=np.array([11,22,33])
>>> b
array([11, 22, 33])
>>> np.append(a,b)
array([ 0, 1, 2, 3, 4, 11, 22, 33])

 

>>> a
array([[1, 2, 3],
    [4, 5, 6]])
>>> b=np.array([[7,8,9],[10,11,12]])
>>> b
array([[ 7, 8, 9],
    [10, 11, 12]])
>>> np.append(a,b)
array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])

numpy的數(shù)組沒有動態(tài)改變大小的功能,numpy.append()函數(shù)每次都會重新分配整個數(shù)組,并把原來的數(shù)組復(fù)制到新數(shù)組中。

數(shù)組拼接方法三

思路:numpy提供了numpy.concatenate((a1,a2,...), axis=0)函數(shù)。能夠一次完成多個數(shù)組的拼接。其中a1,a2,...是數(shù)組類型的參數(shù)

示例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) # 默認(rèn)情況下,axis=0可以不寫
array([ 1, 2, 3, 11, 22, 33, 44, 55, 66]) #對于一維數(shù)組拼接,axis的值不影響最后的結(jié)果

 

>>> 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表示對應(yīng)行的數(shù)組進(jìn)行拼接
array([[ 1, 2, 3, 11, 21, 31],
    [ 4, 5, 6, 7, 8, 9]])

對numpy.append()和numpy.concatenate()兩個函數(shù)的運(yùn)行時間進(jìn)行比較

示例4:

>>> 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()效率更高,適合大規(guī)模的數(shù)據(jù)拼接

PS:更多示例

import numpy as np

a = np.array([[1, 2], [3, 4]])

a.shape
Out[3]: (2, 2)

b = np.array([[5, 6]])

b.shape
Out[5]: (1, 2)

np.concatenate((a, b))
Out[6]: 
array([[1, 2],
    [3, 4],
    [5, 6]])

c= np.concatenate((a, b))

c.shape
Out[8]: (3, 2)

d = np.concatenate((a, b), axis=0)

d.shape
Out[10]: (3, 2)

e = np.concatenate((a, b), axis=1)
Traceback (most recent call last):

 File "<ipython-input-11-05a280a2cb02>", line 1, in <module>
  e = np.concatenate((a, b), axis=1)

ValueError: all the input array dimensions except for the concatenation axis must match exactly


e = np.concatenate((a, b.T), axis=1)

e.shape
Out[13]: (2, 3)


import numpy as np
a = np.array([[1, 2], [3, 4]])
a.shape
Out[3]: (2, 2)
b = np.array([[5, 6]])
b.shape
Out[5]: (1, 2)
np.concatenate((a, b))
Out[6]: 
array([[1, 2],
    [3, 4],
    [5, 6]])
c= np.concatenate((a, b))
c.shape
Out[8]: (3, 2)
d = np.concatenate((a, b), axis=0)
d.shape
Out[10]: (3, 2)
e = np.concatenate((a, b), axis=1)
Traceback (most recent call last):
 File "<ipython-input-11-05a280a2cb02>", line 1, in <module>
  e = np.concatenate((a, b), axis=1)
ValueError: all the input array dimensions except for the concatenation axis must match exactly

e = np.concatenate((a, b.T), axis=1)
e.shape
Out[13]: (2, 3)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用Python實(shí)現(xiàn)數(shù)據(jù)庫的風(fēng)險識別

    使用Python實(shí)現(xiàn)數(shù)據(jù)庫的風(fēng)險識別

    數(shù)據(jù)庫風(fēng)險發(fā)現(xiàn)系統(tǒng)旨在識別和緩解數(shù)據(jù)庫中的潛在風(fēng)險,如SQL注入,未授權(quán)訪問等,下面小編就來為大家詳細(xì)介紹一下如何使用Python實(shí)現(xiàn)數(shù)據(jù)庫的風(fēng)險識別吧
    2025-03-03
  • python mqtt 客戶端的實(shí)現(xiàn)代碼實(shí)例

    python mqtt 客戶端的實(shí)現(xiàn)代碼實(shí)例

    這篇文章主要介紹了python mqtt 客戶端代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • python 中的9個實(shí)用技巧,助你提高開發(fā)效率

    python 中的9個實(shí)用技巧,助你提高開發(fā)效率

    這篇文章主要介紹了python 中的9個實(shí)用技巧,幫助大家提高python開發(fā)時的效率,感興趣的朋友可以了解下
    2020-08-08
  • Django?ORM?多表查詢示例代碼

    Django?ORM?多表查詢示例代碼

    這篇文章主要介紹了Django?ORM?多表查詢,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • 揭秘Python高效編程十招必備技巧

    揭秘Python高效編程十招必備技巧

    這篇文章主要為大家介紹了Python高效編程十招必備技巧實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • python中文件夾py文件相互引用方式

    python中文件夾py文件相互引用方式

    這篇文章主要介紹了python中文件夾py文件相互引用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • python爬蟲如何解決圖片驗證碼

    python爬蟲如何解決圖片驗證碼

    這篇文章主要介紹了python爬蟲如何解決圖片驗證碼,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-02-02
  • Flask中Tracking ID請求跟蹤的設(shè)計實(shí)現(xiàn)

    Flask中Tracking ID請求跟蹤的設(shè)計實(shí)現(xiàn)

    本文詳細(xì)介紹如何在 Flask 應(yīng)用中實(shí)現(xiàn)請求跟蹤 ID功能,包括中間件設(shè)計、日志記錄、響應(yīng)格式化等完整方案,幫助開發(fā)者實(shí)現(xiàn)請求鏈路追蹤,感興趣的可以了解一下
    2026-02-02
  • 深入了解Python如何操作MongoDB

    深入了解Python如何操作MongoDB

    MongoDB是由C++語言編寫的非關(guān)系型數(shù)據(jù)庫,是一個基于分布式文件存儲的開源數(shù)據(jù)庫系統(tǒng)。本文主要介紹了如何通過Python操作MongoDB,需要的可以參考一下
    2022-01-01
  • Python適配器模式代碼實(shí)現(xiàn)解析

    Python適配器模式代碼實(shí)現(xiàn)解析

    這篇文章主要介紹了Python適配器模式代碼實(shí)現(xiàn)解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08

最新評論

竹北市| 泸溪县| 闵行区| 阿鲁科尔沁旗| 县级市| 贵阳市| 英德市| 兴隆县| 鹤峰县| 临西县| 五莲县| 且末县| 平遥县| 宿松县| 沙坪坝区| 嘉义市| 尚义县| 廉江市| 兰州市| 平邑县| 全南县| 彭泽县| 华安县| 清丰县| 鞍山市| 奉化市| 临海市| 新巴尔虎右旗| 正宁县| 定边县| 绿春县| 黄平县| 安陆市| 蒙自县| 都江堰市| 扶余县| 房产| 礼泉县| 泌阳县| 绥滨县| 全州县|