擅长:python、mysql、java
<p>如果我可以直截了当地推荐我自己的包<code>symfit</code>,我认为它正是您所需要的。关于使用共享参数拟合的示例可以在<a href="http://symfit.readthedocs.io/en/latest/fitting_types.html#global-fitting" rel="nofollow noreferrer">docs</a>中找到。在</p>
<p>上述具体问题将变成:</p>
<pre><code>from symfit import variables, parameters, Model, Fit, sin, exp
x, y_1, y_2, y_3 = variables('x, y_1, y_2, y_3')
a, b = parameters('a, b')
a.value = 0.3
b.value = 0.1
model = Model({
y_1: a * sin(b * x),
y_2: a * x**2 - b * x,
y_3: a * exp(b / x),
})
xdata = np.linspace(1, 20, 50)
ydata = model(x=xdata, a=0.1, b=0.5)
y_noisy = ydata + 0.2 * np.random.normal(size=(len(model), len(xdata)))
fit = Fit(model, x=xdata, y_1=y_noisy[0], y_2=y_noisy[1], y_3=y_noisy[2])
fit_result = fit.execute()
</code></pre>
<p>查看<a href="http://symfit.readthedocs.io/en/latest/fitting_types.html#global-fitting" rel="nofollow noreferrer">docs</a>了解更多信息!在</p>