您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“np.repeat()函數(shù)如何使用”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
代碼如下:
import numpy as np class Debug: def __init__(self): self.array1 = np.array([[1, 2], [3, 4]]) def mainProgram(self): print("The value of array1 is: ") print(self.array1) print("The repeated array is: ") array2 = np.repeat(self.array1, repeats=1) print(array2) if __name__ == '__main__': main = Debug() main.mainProgram() """ The value of array1 is: [[1 2] [3 4]] The repeated array is: [1 2 3 4] """
我們可以看到我們輸入的是一個(gè)二維數(shù)組,當(dāng)我們?cè)O(shè)定 repeats 值為 1 時(shí),輸出結(jié)果變成了一個(gè)一維數(shù)組,因此這時(shí)的 np.repeats 函數(shù)類(lèi)似numpy.ndarray.flatten()函數(shù)的功能。
接下來(lái)我們研究一下關(guān)于 axis 坐標(biāo)軸的問(wèn)題。
對(duì)于數(shù)組是二維的情況,代碼如下:
import numpy as np class Debug: def __init__(self): self.array1 = np.array([[1, 2], [3, 4]]) def mainProgram(self): print("The value of array1 is: ") print(self.array1) print("The array2 is: ") array2 = np.repeat(self.array1, repeats=2, axis=0) print(array2) print("The array3 is: ") array3 = np.repeat(self.array1, repeats=2, axis=1) print(array3) if __name__ == '__main__': main = Debug() main.mainProgram() """ The value of array1 is: [[1 2] [3 4]] The array2 is: [[1 2] [1 2] [3 4] [3 4]] The array3 is: [[1 1 2 2] [3 3 4 4]] """
我們可以看到,axis=0 時(shí)表示沿著y方向重復(fù),axis=1 時(shí)表示沿著x方向重復(fù)。我們可以對(duì)比numpy數(shù)組的坐標(biāo)軸表示,二維時(shí),坐標(biāo)軸為 (y, x),從左向右第一個(gè)參數(shù) 0 便代表 y 軸,1 代表 x軸。
接下來(lái)我們研究一下數(shù)組是三維的情況,代碼如下:
import numpy as np class Debug: def __init__(self): self.array1 = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) def mainProgram(self): print("The value of array1 is: ") print(self.array1) print("The array2 is: ") array2 = np.repeat(self.array1, repeats=2, axis=0) print(array2) print("The array3 is: ") array3 = np.repeat(self.array1, repeats=2, axis=1) print(array3) print("The array4 is: ") array4 = np.repeat(self.array1, repeats=2, axis=2) print(array4) if __name__ == '__main__': main = Debug() main.mainProgram() """ The value of array1 is: [[[1 2] [3 4]] [[5 6] [7 8]]] The array2 is: [[[1 2] [3 4]] [[1 2] [3 4]] [[5 6] [7 8]] [[5 6] [7 8]]] The array3 is: [[[1 2] [1 2] [3 4] [3 4]] [[5 6] [5 6] [7 8] [7 8]]] The array4 is: [[[1 1 2 2] [3 3 4 4]] [[5 5 6 6] [7 7 8 8]]] """
我們可以看到,axis=0 對(duì)應(yīng)與沿著z軸重復(fù),axis=1 對(duì)應(yīng)沿著y軸重復(fù),axis=2 對(duì)應(yīng)沿著x軸重復(fù)。對(duì)比numpy坐標(biāo)軸的表示,我們知道三維坐標(biāo)軸為 (z, y, x),所以從左向右,0 對(duì)應(yīng)z軸,1 對(duì)應(yīng) y軸,2 對(duì)應(yīng) x 軸。
“np.repeat()函數(shù)如何使用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。