在numpy数组中查找最大值行的最安全方法

2024-04-20 09:19:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我的数据如下-

x= np.array( ((0,0,0,0), (0,0,0,2.8) ))

我想找到包含最大值的行。在本例中,它是1(索引为0,因此为1)

np.argmax(x)将位置返回为7

我可以迂回使用argmax和ndim来查找最大值的行号。在

我想知道有没有别的办法

我使用的是python2.7。谢谢。在


Tags: 数据nparray行号办法argmax本例ndim
2条回答

试试这个:

In [7]: import numpy as np

In [8]: x= np.array( ((0,0,0,0), (0,0,0,2.8) ))

In [9]: np.argmax(x.max(axis=1))
Out[9]: 1

使用np.argmax(x)获得{}后,可以执行以下操作:

>>> np.unravel_index(np.argmax(x), x.shape)
(1, 3)

这会将平面索引转换回二维索引,您可以很容易地看到它是哪一行。在

相关问题 更多 >