首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >np.argmax是否返回第一个最大值?

np.argmax是否返回第一个最大值?
EN

Stack Overflow用户
提问于 2022-07-13 15:29:03
回答 2查看 65关注 0票数 0

np.argmax总是返回第一最大元素的索引吗?

a = np.array([1, 3, -7, ...])是一个一维数组,包含多个最大元素,如索引102030。Numpy似乎系统地返回了10,而不是2030,但是我在文档中找不到关于这个行为的信息,也找不到源代码中的实现细节。有人知道吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-07-13 15:31:33

是的,这实际上是在numpy.argmax文档中解释的:

Notes 在最大值多次出现的情况下,返回对应于第一次出现的索引。

票数 2
EN

Stack Overflow用户

发布于 2022-07-13 15:34:54

是的,它只输出第一个匹配项,但是可以使用np.argsort获得n个最高值:

代码语言:javascript
运行
复制
np.argsort(your_array)[-n:] #the top n indexes

即:

代码语言:javascript
运行
复制
n=2
a = np.array([1,2,3,3,-1])
np.argsort(a)[-n:]
>array([2, 3], dtype=int64) #elements at index 2 and 3 in array a (3, 3) have the top max values 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72968858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档