【笔记】curve_fit中参数变量不确定的解决方案

curve_fit中参数变量不确定的解决方案


curve_fit函数的定义:

scipy.optimize.curve_fit(f,xdata,ydata,p0 = None,sigma = None,absolute_sigma = False,check_finite = True,bounds = -inf ,inf,method = None,jac = None,** kwargs)

其中第一参数f要求是一个完整的函数体,所有参数和函数形式必须在调用curve_fit的时候确定,f在定义的时候不能包含如*args等不确定的参数。而且并不打算改变这个部分。

有时,在实际使用过程中,函数里的参数数量是不确定的

lambda函数法

利用lambda函数的灵活性,在计算过程中生成函数,然后再进行拟合。

计算步骤:
1 运行程序直到可以确定参数的数量和函数的形式;
2 先利用字符串生成lambda函数;
3 利用eval()转化为程序语言;
4 把转化好的程序语言带入curve_fit中的f参数里。
完成

from scipy import optimize as op

#获得源数据
xdata = ...  
ydata = ...  

#运行代码到已经确定参数数量和函数形式,比如多项式
n=5
list_args = func_body = ''

#生成lambda函数
for i in range(n):
	list_args 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值