如何返回numpy陣列裡所有的最大值,最小值

2021-10-06 07:44:09 字數 745 閱讀 1053

可以使用numpy的函式,argmax獲得最大元素的索引,相應的獲得最小值的話需要使用argmin。

aa = [1,2,3,4,5]

arr_aa = np.array(aa)

maxindex = np.argmax(arr_aa )

也可以將numpy轉為list,然後使用list獲取最大值索引的方法獲得最大值。

aa = numpy.array([1,2,3,4,5])

bb = aa.tolist() # 先把aa轉換為list,再求索引:

bb.index(max(bb))

argmax如果多次出現最大值,則返回與第一次出現相對應的索引.因此需要另一種策略來求取所有的最大值下標

你有乙個選擇是將np.argwhere與np.amax結合使用:

>>> import numpy as np

>>> listy = [7, 6, 5, 7, 6, 7, 6, 6, 6, 4, 5, 6]

>>> winner = np.argwhere(listy == np.amax(listy))

>>> print(winner)

[[0]

[3][5]]

>>> print(winner.flatten().tolist()) # if you want it as a list

[0, 3, 5]

參考:

返回所有的最長回文子串 O n

用馬拉車演算法將回文半徑p i 求出來,回文字串的長度就是p i 1,起始的下標就是 i p i 2,遍歷一次p i 陣列將所有最大長度的 字串存到vector就可以了。include using namespace std string solve string s,vector v vector...

redis如何清除所有的key

redis比memcache好的地方之一,如果memcache,恐怕就得關掉重啟了。1 使用cli flushdb 清除乙個資料庫,flushall清除整個redis資料。2 使用shell redis cli keys while read line do ttl redis cli ttl li...

如何列印出所有的物件?

其實是能實現的,通過get class 函式 複製 mdb new mysql com new common all vars array keys get defined vars sys vars array globals env http env vars post http post va...