numpy 在一个浮点数组中寻找一个最小值

lyr7nygr  于 2022-12-23  发布在  其他
关注(0)|答案(4)|浏览(162)

在python中如何找到一个100个浮点数的数组中的最小值呢?我已经尝试了minindex=darr.argmin()print darr[minindex]import numpy(darr是数组的名称)
但我得到了minindex=darr.argmin()
AttributeError: 'list' object has no attribute 'argmin'
可能有什么问题?有更好的选择吗?

bjp0bcyl

bjp0bcyl1#

Python有一个min()内置函数:

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

busg9geu2#

如果要使用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不能理解。

hvvq6cgz

hvvq6cgz3#

您需要迭代2d数组以获取每行的最小值,然后必须将任何获取的最小值推送到另一个数组,最后需要获取推送每个最小行值的数组的最小值

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)
lkaoscv7

lkaoscv74#

如果最小值在数组中,可以尝试如下操作:

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

相关问题