Python:带'inf'的数组的最小值

Jim*_*im 1 python

我从中学到了inf:如何在Python中表示无限数?

我希望找到包含'inf'的数组的最小值

In [330]: residuals
Out[330]: 
array([[ 2272.35651718,  1387.71126686,  1115.48728484],
       [  695.08009848,            inf,            inf],
       [  601.44997093,            inf,            inf]])

In [331]: min(residuals)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-331-69b09e4201cf> in <module>()
----> 1 min(residuals)

ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Run Code Online (Sandbox Code Playgroud)

然而,似乎'inf'是模棱两可的?有没有一种聪明的方法来找到最小值而不是在这个数组的每个值上运行一个循环?

gon*_*opp 5

这个问题与此无关inf,它是使用python的内置min函数和具有多个维度的numpy数组的副产品.

numpy.min( residuals )应该做你想要的,假设你正在寻找任何子阵列中的最小元素.