欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

np.repeat()函數(shù)的具體使用

 更新時(shí)間:2023年03月13日 09:44:22   作者:勤奮的大熊貓  
本文主要介紹了np.repeat()函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

在 numpy 模塊中的 repeat 函數(shù),總是會(huì)出現(xiàn)設(shè)置 axis 坐標(biāo)軸的情況,這時(shí)的坐標(biāo)軸有時(shí)候就顯的十分混亂,每到此處就不知道該給 axis 什么值。特寫一篇博客來詳細(xì)說明這個(gè)問題。

使用np.repeat()展平二維數(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 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ù)類似numpy.ndarray.flatten()函數(shù)的功能。

np.repeat()函數(shù)的坐標(biāo)軸問題

接下來我們研究一下關(guān)于 axis 坐標(biāo)軸的問題。

二維

對(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軸。

三維

接下來我們研究一下數(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 軸。

到此這篇關(guān)于np.repeat()函數(shù)的具體使用的文章就介紹到這了,更多相關(guān)np.repeat()函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論