执行线性回归的最佳方法

时间:2009-12-29 10:37:07

标签: math

我有一组来自实验,E1,...,E5的5个值以及来自10000个不同模拟的结果,sim_A_B_C.out。从每次模拟我得到S1,...,S5。

我想研究实验值和模拟值之间的相关性。因此,我想对脚本中的每个集合执行线性回归,该脚本循环遍历10000个结果文件集。

在bash或python中执行线性回归的最佳方法是什么?我以前用sigmaplot来做这件事,但对于那么大的数据集来说它不太好

3 个答案:

答案 0 :(得分:2)

我希望你的每个模拟都有一些不同的输入值,例如,第一个x为1,第二个为2,然后你有一些函数f(x)它运行模拟并为每个模拟生成5个点。从您的示例中,我预计x实际上是三个值,A,B,C。

在这种情况下,您要发现的是x的值,它会生成最佳模拟。

在这种情况下,你真的需要找到f(x)与实验结果之间的相关性,而不是模拟结果本身。

这样做的原因是在模拟和实验结果之间找到一个良好的相关性有太多的变量(如果你假设模拟是相互独立的),并且可能只是偶然找到一个拟合。

我认为您还应该获得额外的实验值,以增加您的信心。


我最喜欢的语言是R,这是most platforms at a download site near you免费提供的,我建议使用"Introduction to Statistics using R"这本书,它提供了很多盆栽的例子供你试用,并指导您完成一些非常高级的事情。

答案 1 :(得分:0)

在python中,你可以使用SciPy包中的stats.linregress函数。

答案 2 :(得分:0)

我为此避免使用bash并使用Python - 实际上我使用的是Matlab或Mathematica但是你的列表中都没有。所以安装Numpy并且可能安装Scipy并开始破解。