查找2d numpy数组的最大索引



我有这个matlab代码,旨在找到在二维矩阵的每列中具有最大值的索引。

[~, indk] = max(R2)

我想在python中应用这个,但似乎找不到任何好的方法。

在我的例子中,变量R2是一个18x122880矩阵。我希望indk是一个1x122880数组。

我开始这样做:

indk = np.argmax(R2)

但是这只给了我一个索引。有什么方法可以像MATLAB代码那样实现这个吗?

就到这里

R2.argmax(axis=0)#或1取决于你想要哪个轴

indk = np.argmax(R2, axis=0)

axis=0表示矩阵的列。

numpy. narray .argmax

import numpy
arr = numpy.array([[1,2,3],[6,5,4],[7,8,9]])
print(arr.argmax(axis = 1)) # [2 0 2]
print(arr.argmax(axis = 0)) # [2 2 2]