我正在尝试通过两个参数共享来执行全局拟合。现在我收到一条消息'AttributeError:'float'对象没有属性'exp'。
代码如下:
import numpy as np
import symfit as sf
import matplotlib.pyplot as plt
x= #data from dataframe
y1= #data from dataframe
y2= #data from dataframe
y3= #data from dataframe
x_1, x_2, x_3, y_1, y_2, y_3 = sf.variables('x_1, x_2, x_3, y_1, y_2, y_3')
A0_0, A1_0, A0_1, A1_1, A2_1, A0_2, A1_2, tau1, tau2 = sf.parameters('A0_0, A1_0, A0_1, A1_1, A2_1, A0_2, A1_2, tau1, tau2')
globalmodel = sf.Model({
y_1: A0_0 + A1_0 * sf.exp(-x_1 / tau1),
y_2: A0_1 + A1_1 * sf.exp(-x_2 / tau1) + A1_1 * sf.exp(-x_2 / tau2),
y_3: A0_2 + A1_2 * sf.exp(-x_3 / tau2),
})
globalfit = sf.Fit(globalmodel, x_1=t, x_2=t, x_3=t, y_1=y1, y_2=y2, y_3=y3)
globalfit_result = globalfit.execute()
print(globalfit_result)
y_r = globalmodel(x_1=t, x_2=t, x_3=t, **globalfit_result.params)
我使用这个在线资源作为参考。我不知道我的代码有什么问题。这可能是一个基本问题。指出我的代码中的错误将有很大帮助。