您好,登錄后才能下訂單哦!
今天小編給大家分享一下Python怎么循環(huán)遍歷Numpy中的Array的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
Numpy是Python中常見的數(shù)據(jù)處理庫。Numpy是 Numerical Python的縮寫,它是數(shù)據(jù)科學(xué)中經(jīng)常使用的庫。Numpy專門用于處理矩陣運算,因為它包含各式各樣的處理函數(shù)。在本文中,我們主要用于學(xué)習(xí)如何迭代遍歷訪問矩陣中的元素。
閑話少說,我們直接開始吧!
首先我們來看個例子,使用循環(huán)來遍歷數(shù)組,樣例代碼如下:
import numpy as np array = np.array([1, 2, 3, 4, 5, 6]) for x in array: print(x) Output: 1 2 3 4 5 6
在上面的例子中,我們創(chuàng)建了一個一維數(shù)組,并成功地遍歷訪問了每個值?,F(xiàn)在讓我們來看一個二維矩陣中的例子:
import numpy as np array = np.array([[1, 2, 3], [4, 5, 6]]) for x in array: for y in x: print(y) Output: 1 2 3 4 5 6
正如我們在上面例子中所看到的,我們?nèi)匀荒軌虼蛴〕雒總€單獨的值。因為它是一個二維數(shù)組,所以我們必須使用兩個for循環(huán)來輸出每個單獨的值。這是我們通常迭代二維數(shù)組的方式,但NumPy為我們提供了新的函數(shù),使得迭代NumPy數(shù)組變得更容易。
函數(shù)nditer()主要用于循環(huán)遍歷整個數(shù)組,而無需為每個額外維度使用嵌套for循環(huán)。
我們不妨來看一個例子:
import numpy as np array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) for x in np.nditer(array): print(x) Output: 1 2 3 4 5 6 7 8 9
上述例子是一個二維的數(shù)組,我們使用函數(shù)nditer()后,我們不需要再使用嵌套的for循環(huán)。函數(shù)‘nditer()’成功地f訪問并打印了數(shù)組中的每個值。
我們不妨在來看一個三維數(shù)組的例子,樣例如下:
import numpy as np array = np.array([[[1], [2]], [[3], [4]]]) for x in np.nditer(array): print(x) Output: 1 2 3 4
正如我們在上面的例子中所看到的,函數(shù)nditer()成功地迭代了三維數(shù)組中的每個元素。
接著我們來介紹函數(shù)ndenumerate(),該函數(shù)的作用是輸出相應(yīng)的索引號的對應(yīng)的值。
樣例代碼如下:
import numpy as np array = np.array([1, 2, 3, 4, 5, 6]) for i, x in np.ndenumerate(array): print(i, x) Output: (0,) 1 (1,) 2 (2,) 3 (3,) 4 (4,) 5 (5,) 6
正如上述例子中,我們在括號內(nèi)輸出了每個元素的索引號及其相應(yīng)的值。接著我們再來看一個二維矩陣的例子:
import numpy as np array = np.array([[1, 2, 3], [4, 5, 6]]) for i, x in np.ndenumerate(array): print(i, x) Output: (0, 0) 1 (0, 1) 2 (0, 2) 3 (1, 0) 4 (1, 1) 5 (1, 2) 6
在上述例子中,我們輸出的第一維表示每個元素的索引號,第二維表示每個元素的值。
以上就是“Python怎么循環(huán)遍歷Numpy中的Array”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。