拟合曲线的python - 拟合参数

时间:2015-11-26 15:23:21

标签: python curve-fitting

我试图在Python中为我的数据拟合曲线,如下所示:

def func(p1,p2,p3,x):
    return p1*((p2-x)/p2)^(-p3)

我在另一个函数中调用此函数,并尝试拟合:

f1 = func(p1,p2,p3,x)
popt, pcov = curve_fit(f1, T, Susceptibility) 

但Python并不认为p1,p2,p3是一个合适的参数,因为我收到此错误消息: global name 'p1' is not defined

1 个答案:

答案 0 :(得分:1)

更仔细地阅读the docsx应该是第一个参数。您还需要使用函数作为输入而不是它的返回值

def func(x, p1, p2, p3):
    return p1*((p2-x)/p2)^(-p3)

popt, pcov = curve_fit(func, T, Susceptibility)