Я пытаюсь установить функцию, которая принимает в качестве входных 2 независимых переменных x, y и 3 параметров, которые будут найдены a, b, c. Это мой тестовый код:Передача аргументов функции для установки
import numpy as np
from scipy.optimize import curve_fit
def func(x,y, a, b, c):
return a*np.exp(-b*(x+y)) + c
y= x = np.linspace(0,4,50)
z = func(x,y, 2.5, 1.3, 0.5) #works ok
#generate data to be fitted
zn = z + 0.2*np.random.normal(size=len(x))
popt, pcov = curve_fit(func, x,y, zn) #<--------Problem here!!!!!
Но я получаю сообщение об ошибке: "Func() принимает ровно 5 аргументов (51 дан)". Как правильно передать аргументы x, y?
Что говорит о 'curve_fit' документации о параметре' func'? Очевидно, он пытается назвать это 51 параметром, поэтому, возможно, вам стоит перечитать документацию. – Wes