Usando scipy curve_fit para um número variável de parâmetros

Eu tenho uma função de ajuste que tem a forma:

def fit_func(x_data, a, b, c, N)

onde a, b, c são listas do décimo primeiro N, cuja entrada é um parâmetro variável a ser otimizado em scipy.optimize.curve_fit () e N é um número fixo usado para controle de índice de loop.

Segueessa questão Acho que sou capaz de corrigir N, mas atualmente estou chamando curve_fit da seguinte maneira:

params_0 = [a_init, b_init, c_init]
popt, pcov = curve_fit(lambda x, a, b, c: fit_func(x, a, b, c, N), x_data, y_data, p0=params_0)

Eu recebo um erro: lambda () leva exatamente Q argumentos (P dado)

onde Q e P variam dependendo de como eu estou configurando as coisas.

Então: isso é possível, para iniciantes? Posso passar listas como argumentos para o curve_fit e ter o comportamento que espero, no qual ele trata os elementos da lista como parâmetros individuais? E supondo que a resposta seja sim, o que estou fazendo de errado com minha chamada de função?

questionAnswers(1)

yourAnswerToTheQuestion