python使用numpy尋找二維數(shù)組的最值及其下標方法分析
一、通過np.max和np.where尋找【所有滿足條件的解】
通過np.max()找矩陣的最大值,再通過np.where獲得最大值的位置,代碼如下:
import numpy as np a = np.random.randint(1, 10, size=12) a = a.reshape((3,4)) print(a) print(np.max(a)) r, c = np.where(a == np.max(a)) print(r,c)
輸出:
[[7 8 9 4]
[9 3 9 3]
[5 6 1 5]]9
[0 1 1] [2 0 2]
輸出的是兩個array,分別是x和y數(shù)組,即找出了和這個最值相等的所有位置。
二、通過np.argmax尋找【第一個滿足條件的解】
把矩陣展成一維,np.argmax可以返回最大值在這個一維數(shù)組中第一次出現(xiàn)的位置,用這個位置除以矩陣的列數(shù),所得的商就是最大值所在的行,所得的余數(shù)就是最大值所在的列。
import numpy as np
a = np.random.randint(1, 10, size=12)
a = a.reshape((3,4))
print(a)
print(np.max(a))
m = np.argmax(a) # 把矩陣拉成一維,m是在一維數(shù)組中最大值的下標
r, c = divmod(m, a.shape[1]) # r和c分別為商和余數(shù),即最大值在矩陣中的行和列
# m是被除數(shù), a.shape[1]是除數(shù)
print(r, c)輸出:
[[5 5 9 7]
[5 5 8 9]
[2 3 9 3]]9
0 2
可以看到只找到了第一個出現(xiàn)的最大值,后續(xù)的是搜索不到的。
以上就是python使用numpy尋找二維數(shù)組的最值及其下標的詳細內(nèi)容,更多關(guān)于python numpy最值下標的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
pyqt5 鍵盤監(jiān)聽按下enter 就登陸的實例
今天小編就為大家分享一篇pyqt5 鍵盤監(jiān)聽按下enter 就登陸的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06
python神經(jīng)網(wǎng)絡(luò)facenet人臉檢測及keras實現(xiàn)
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)facenet人臉檢測及keras實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05
手把手教你用Python打造互動式中秋節(jié)慶祝小程序
中秋節(jié)將至,本文提供了一個使用Python開發(fā)的中秋節(jié)慶祝小程序教程,通過簡單的步驟,您可以創(chuàng)建一個具有節(jié)日祝福、互動式燈謎游戲和模擬中秋明月動態(tài)背景的小程序,文章詳細介紹了程序的功能、實現(xiàn)步驟以及如何運行程序,需要的朋友可以參考下2024-09-09
Python3 使用map()批量的轉(zhuǎn)換數(shù)據(jù)類型,如str轉(zhuǎn)float的實現(xiàn)
今天小編就為大家分享一篇Python3 使用map()批量的轉(zhuǎn)換數(shù)據(jù)類型,如str轉(zhuǎn)float的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11
如何在scrapy中集成selenium爬取網(wǎng)頁的方法
這篇文章主要介紹了如何在scrapy中集成selenium爬取網(wǎng)頁的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-11-11

