您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – 查找numpy数组中每行的最大值以及相同大小的另一个数组中的相应元素

5b51 2022/1/14 8:22:57 python 字数 1129 阅读 564 来源 www.jb51.cc/python

我是 Python的新手,仍然不能称自己为Python程序员.说到这一点,如果我的问题没有任何意义,请耐心等待. 题: 我有两个相同大小的numpy数组,例如A和B,其中A.shape等于B.shape,它们都等于(5,1000),我想找到A中每行的最大值和B中相应的元素.例如,如果在第四行A,最大元素索引是104然后我想在数组B中找到第四行的第104个元素,而其余行则相同. 我知道我可以通过循环

概述

题:

我有两个相同大小的numpy数组,例如A和B,其中A.shape等于B.shape,它们都等于(5,1000),我想找到A中每行的最大值和B中相应的元素.例如,如果在第四行A,最大元素索引是104然后我想在数组B中找到第四行的第104个元素,而其余行则相同.

我知道我可以通过循环遍历行来实现它,但我想知道是否有更优雅的方式.例如,如果我在MATLAB中这样做,我会写下面的代码

B(bsxfun(@eq,A,max(A,[],2)))

任何指导我通过正确方向的帮助将非常感激.

b[np.arange(len(a)),np.argmax(a,axis=1)]

例如:

>>> a = np.array([
    [1,2,0],[2,1,[0,2]
    ])
>>> b = np.array([
    [1,3],[1,3]
    ])
>>> b[np.arange(len(a)),axis=1)]
array([2,3])

总结

以上是编程之家为你收集整理的python – 查找numpy数组中每行的最大值以及相同大小的另一个数组中的相应元素全部内容,希望文章能够帮你解决python – 查找numpy数组中每行的最大值以及相同大小的另一个数组中的相应元素所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶