Python中numpy中tile和repeat用法和区别
生活随笔
收集整理的這篇文章主要介紹了
Python中numpy中tile和repeat用法和区别
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
tile
- tile(數(shù)組,重復(fù)次數(shù))
- tile(數(shù)組,(第1維重復(fù)次數(shù),第2維重復(fù)次數(shù),…,第n維重復(fù)次數(shù)))
例子
tile(數(shù)組,(沿著第1維的軸重復(fù)次數(shù),沿著第2維的軸重復(fù)次數(shù),…,沿著第n維的軸重復(fù)次數(shù)))
我看了下numpy中tile()函數(shù)的源碼,它是這么做的。
(第1維重復(fù)次數(shù),第2維重復(fù)次數(shù),…,第n維重復(fù)次數(shù))這是個元組,復(fù)制的順序是從最后那個維度開始往前執(zhí)行復(fù)制操作。
假如是tile(a,(2,4,3),它先將a復(fù)制3次將結(jié)果保存到a,然后復(fù)制4次然后增加一維再保存到a,然后再復(fù)制2次然后增加一維返回結(jié)果。
這個元組維度和目標(biāo)數(shù)組維度一樣,因為它是要沿著某個軸進(jìn)行復(fù)制。看下面這個例子
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' a = np.array([0,1,2]) np.tile(a,(2,3)) """ 從后面往前面遍歷元組(2,3)。先將a復(fù)制3次,然后將復(fù)制后的結(jié)果保存到a=[0, 1, 2, 0, 1, 2, 0, 1, 2]。 再復(fù)制2次。得到目標(biāo)數(shù)組。 array([[0, 1, 2, 0, 1, 2, 0, 1, 2],[0, 1, 2, 0, 1, 2, 0, 1, 2]]) """np.tile(a,(3,1)) """ 從后面往前遍歷元組(3,1),先將a復(fù)制1次,然后將復(fù)制的結(jié)果保存到a。再復(fù)制3次。 array([[0, 1, 2],[0, 1, 2],[0, 1, 2]]) """ tile(數(shù)組,重復(fù)次數(shù))=tile(數(shù)組,(重復(fù)次數(shù),))a = np.array([0,1,2]) np.tile(a,3) """ array([0, 1, 2, 0, 1, 2, 0, 1, 2]) """總結(jié)
以上是生活随笔為你收集整理的Python中numpy中tile和repeat用法和区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大部分人都会忽略的Python易错点总结
- 下一篇: 利用正则表达式实现python强口令检测