R - 拟合直方图:峰值信号加背景

时间:2014-06-30 10:41:46

标签: r histogram curve-fitting

我需要在R中使用包含峰值信号和平坦背景的直方图。像这样:

Google Images Link

pic http://wwwasd.web.cern.ch/wwwasd/paw/contributions/bwp4_fit.gif

我怎样才能在R中有效率?我还没有在网上找到任何好的参考资料。 我习惯在ROOT中做到这一点:http://root.cern.ch/root/html/tutorials/fit/FittingDemo.C.html 但是在R中它并不那么容易......

我使用fitdistr(MASS包)做了一些事情,但只有当我使用一个给定的分布(例如高斯分布)时它才会很好。 如果我尝试向高斯添加平坦(均匀)背景,请为两个分布的相对存在添加参数:

f = gaus(mean, sigma) + r * uniform

使用均值,sigma和r自由参数,拟合不再起作用。

典型错误是:

Error in solve.default(res$hessian) : 
  Lapack routine dgesv: system is exactly singular: U[1,1] = 0
In addition: There were 28 warnings (use warnings() to see them)

或者只是没有收敛。

最后,我不明白R如何处理规范化常数(每个添加的分布前面的乘法参数)。我想如果我们拟合频率,所有(直方图和拟合曲线)应该已经归一化为单位。因此,在峰值信号中添加平坦背景时唯一的新参数应该是相对权重(上例中的r) 。是这种情况吗?

由于 马可

0 个答案:

没有答案