Я использую функцию scipy.optimize.curve_fit для подгонки некоторых данных. Если подгонка сходится нормально, curve_fit
будет возвращать два массива popt
и pcov
, которые будут выглядеть следующим образом для функции двух параметров:Определить бесконечное значение из массива поплавков
print popt
[ 2.97591488e-03 3.08947359e+01]
print pcov
[[ 2.44224139e-06 -1.67832708e-02]
[ -1.67832708e-02 1.16808802e+02]]
Проблема в том, что время от времени функция будет не в состоянии получить действительный pcov
в результате :
print pcov
inf
Мне нужно, чтобы быть в состоянии сказать, когда pcov
является «действительным» список/массив поплавки и когда это inf
«недействителен» значение.
Я пробовал:
if np.isfinite(np.array(pcov).any()):
print 'valid'
else:
print 'invalid'
, но это не дает хороших результатов.