python - 获取每行的numpy数组中最大值的索引?
问题描述
我有一个numpy
30 行和 4 列的数组,对于每一行,我需要获取最大值所在的索引。
所以对于这样的数组
a = np.array([[0, 1, 2],[7, 4, 5]])
我想获得一个包含2
第一行和0
第二行索引的列表。
我尝试使用 numpy 函数 argmax 如下:
for i in range(len(a)):
results=[np.argmax(a)]
return (results)
但我只是得到了全球最大值,有谁知道如何解决这个问题?
非常感谢你的帮助。
解决方案
使用argmax
with 方法axis=1
来处理行。
>>> import numpy as np
>>> a = np.array([[0, 1, 2],[7, 4, 5]])
>>> a.argmax(axis=1)
array([2, 0])
还有一个numpy.argmax
模块级功能,它的工作原理是一样的。
>>> np.argmax(a, axis=1)
array([2, 0])
推荐阅读
- uwp - 在哪里可以找到用于应用到应用通信的 UWP 应用文档?
- image - 使用 tf.browser.fromPixels 和 Tensorflow JS 创建多个图像的张量
- ios - iOS:子视图控制器解除导致再次调用 viewDidLoad
- asp.net-core - 了解 Microsoft 标识命名空间(System.Web.Security、Microsoft.AspNet.Identity.Core 与 Microsoft.AspNetCore.Identity)
- r - 在 lapply 语句中访问 .SD 属性
- c - 如何在 SAP b1 表单中创建列树视图?
- google-sheets - 当我更改工作表名称时,是否有一个 Google 表格函数保存对另一个工作表的引用?
- sonarqube - 如何使用 GitLab 在 SonarQube(v7.9.1 社区版)的配置中实现 publishMode 变量
- sass - 下拉箭头不起作用
- scala - 有没有办法使用 foldLeft 或任何其他列表方法对 scala 的函数进行排序?