在浮点数组中找到最小值

时间:2010-08-17 03:02:08

标签: python arrays numpy minimum

如何在python中找到100个浮点数组中的最小值? 我尝试了minindex=darr.argmin()print darr[minindex] import numpy(darr是数组的名称)

但我得到: minindex=darr.argmin()

AttributeError: 'list' object has no attribute 'argmin'

可能是什么问题?有更好的选择吗?

提前致谢

4 个答案:

答案 0 :(得分:58)

Python有min() built-in function

>>> darr = [1, 3.14159, 1e100, -2.71828]
>>> min(darr)
-2.71828

答案 1 :(得分:23)

如果你想使用numpy,你必须将darr定义为一个numpy数组,而不是list

import numpy as np
darr = np.array([1, 3.14159, 1e100, -2.71828])
print(darr.min())

darr.argmin()将为您提供与最小值相对应的索引。

您收到错误的原因是因为argmin是numpy数组所理解的方法,而不是Python lists所理解的方法。

答案 2 :(得分:0)

您需要迭代2d数组以获取每一行的最小值,然后必须将获得的最小值推到另一个数组,最后需要获取该数组的最小值,其中每个min行值被推

def get_min_value(self, table):
    min_values = []
    for i in range(0, len(table)):
        min_value = min(table[i])
        min_values.append(min_value)

    return min(min_values)

答案 3 :(得分:0)

如果数组中的最小值,您可以尝试:

>>> mydict = {"a": -1.5, "b": -1000.44, "c": -3}
>>> min(mydict.values())
-1000.44