我正在寻找两个数组的最大值,我试图获取每个数组的最大值并添加到另一个'np.array'中。但是,我得到了1。
maximums = [x_train.argmax(), x_test.argmax()]
print(maximums)
maximums = np.array(maximums)
print(maximums)
maximum = maximums.argmax()
print(maximum)
我希望最大值为577,但值为1。
[417, 577]
[417 577]
1
错误在哪里,或者为什么我没有得到想要的东西?
编辑: 我找到了一个满足我需求的函数,它是‘numpy.amax()’https://thispointer.com/find-max-value-its-index-in-numpy-array-numpy-amax/
答案 0 :(得分:1)
np.argmax
返回最大值的索引。在这种情况下,最大值577
的索引为1。官方文档参考:https://docs.scipy.org/doc/numpy/reference/generated/numpy.argmax.html
为了举例说明,np.argmax等同于获取列表中最大值的索引:
In [82]: import numpy as np
In [83]: vals = [477,577]
In [84]: max(vals)
Out[84]: 577
In [86]: vals.index(max(vals))
Out[86]: 1
In [87]: max_index = vals.index(max(vals))
In [88]: np.argmax(vals)
Out[88]: 1
In [89]: np.argmax(vals) == max_index
Out[89]: True
答案 1 :(得分:0)
argmax
返回沿轴的最大值的索引。” Docs:docs.scipy.org/doc/numpy/reference/generated/numpy.argmax.html
答案 2 :(得分:0)
argmax为您提供列表中最大值的索引,因此您可能想要执行以下操作:
j,w = x_train.argmax(), x_test.argmax()
maximums = [x_train[j], x_test[w]]
max_v = max(maximums)
print(max_v)