在x和y上有误差的线性拟合

2024-05-29 05:27:12 发布

您现在位置:Python中文网/ 问答频道 /正文

使用python,我试图找到最适合我的数据的直线方程。但是,我在x和y数据点上有错误。请注意,我的错误不是对称的。我的数据点如下:

   x    x_upper_err    x_lower_err    y        y_upper_err    y_lower_err
-0.120  0.280           0.280       0.074484    0.000140    -0.000077
 0.210  0.170           0.270       0.091828    0.000414    -0.001600
-0.280  0.300           0.300       0.041035    0.002209    -0.000771

我尝试过使用kmpfit包,但是这个包假设我的错误遵循高斯分布。http://www.astro.rug.nl/software/kapteyn/kmpfittutorial.html#fitting-data-when-both-variables-have-uncertainties

有别的方法吗?我遇到了ODR(正交距离回归)方法,但是这种方法也考虑到误差是正态分布的。在

感谢任何帮助。谢谢

更新

为了测试数据上的错误是否是正态分布的,我做了一个Q-Q plot。以下是我的结果:

Q-Q plot of independent variableQ-Q plot of independent variable

Q-Q plot of dependent variable

Q-Q plot of dependent variable

我可以假设我的independent变量是normally distributed,但我不能假设我的dependent错误。在

问题1:知道我的dependent errors不是正态分布的,下一步该怎么做?在

问题2:使用ODR解决我的问题是否可行?在


Tags: of数据方法plot错误variableupperlower
1条回答
网友
1楼 · 发布于 2024-05-29 05:27:12

是什么让你确定你的残差不是正态分布的?检查这种假设的一种方法是使用Q-Q plot。从实用主义的角度来看,大多数人只会看他们数据的散点图,看看残差是否正态分布。通常违反这个假设并不重要,但这取决于你想做什么。在

使用正交距离回归,而不是普通的最小二乘法(这可能是您正在使用的)并不能解决问题。你可能会得到更好的答案stats.stackexchange.com网站,尤其是this question可能会对您有所帮助。在

相关问题 更多 >

    热门问题