Я пытаюсь вписать кривую логистического роста в мои данные, используя в качестве входного значения curve_fit, используя следующую функцию:
def logistic(x, y0, k, d, a, b):
if b > 0 and a > 0:
y = (k * pow(1 + np.exp(d - (a * b * x) ), (-1/b) )) + y0
elif b >= -1 or b < 0 or a < 0:
y = (k * pow(1 - np.exp(d - (a * b * x) ), (-1/b) )) + y0
return y
Как вы видите, используемая мной функция имеет некоторые ограничения по значениямон может принимать параметры a и b.Есть предположения о том, как обрабатывать неправильные значения?Должна ли функция ввода вызывать исключение или возвращать фиктивное значение?Заранее спасибо.