Python 相关变量与scipy曲线拟合
我有一个物理模型,有一个自变量Python 相关变量与scipy曲线拟合,python,scipy,correlation,curve-fitting,model-fitting,Python,Scipy,Correlation,Curve Fitting,Model Fitting,我有一个物理模型,有一个自变量X和三个参数a,B和C。因变量为Y=F(X,A,B,C),其中F是平滑连续的模型函数 我有许多数据点文件(X,Y),我希望(每个文件)与模型相匹配,以研究参数如何变化。该模型对自变量和所有参数都是非线性的 为了适应这个模型,我使用Python中的scipy.optimize curve\u fit,在带有数据点的整个文件中使用for循环。对于每个文件,我都会得到最佳拟合参数(A、B、C),模型非常适合所有文件。但是,当我检查配件后的参数误差时,我注意到A中的误差非常
X
和三个参数a
,B
和C
。因变量为Y=F(X,A,B,C)
,其中F
是平滑连续的模型函数
我有许多数据点文件(X,Y)
,我希望(每个文件)与模型相匹配,以研究参数如何变化。该模型对自变量和所有参数都是非线性的
为了适应这个模型,我使用Python中的scipy.optimize curve\u fit
,在带有数据点的整个文件中使用for循环
。对于每个文件,我都会得到最佳拟合参数(A、B、C)
,模型非常适合所有文件。但是,当我检查配件后的参数误差时,我注意到A
中的误差非常大,甚至比相应的值高出两个数量级
经验告诉我,这些较大的差异可能是由于参数A
可能与其他任何参数相关。为了验证这一假设,我绘制了获得的A
值与B
和C
值的对比图。我看到,事实上,出现了一种形式为a=a*B^B
的幂律关系,这在物理上是可以接受的
有没有一种方法可以告诉
曲线拟合
在不引入新参数(比如a
和b
)的情况下处理这种相关性,以便以尽可能低的方差拟合模型?尝试使用方法='trf'
作为拟合参数。这避免了使用最小二乘法,并适用于雅可比矩阵的伪逆。我相信特征值为零的雅可比矩阵应该不是问题。谢谢。我试过了,但它给了我同样大的方差。