2013-03-12 256 views
2

我需要计算两条曲线之间的面积。 我有很多数据,所以我想以编程的方式来完成。计算两条曲线(即正态分布)之间的面积

基本上,我总是有2个正态分布,从平均值和标准偏差计算。然后我想计算它们相交的程度。 这是我的意思是example,还有一些R代码(我不知道)。

matplotlibscipy或其他一些模块为我提供了一个函数吗? 如果我要实现它自己,我认为我应该做的:

  • 找到路口(会有最多2)
  • 看看哪些功能是降低之前,[之间],并经过路口
  • 计算下函数的积分,并加入他们一起

是吗?我怎么做单步骤?有功能,模块等可以帮助吗?

回答

3

我也不知道R,但答案似乎在您提供的链接中:只集成最小的分布。 你不需要找到十字路口,只需将min(f(x), g(x))加到scipy.integrate.quad即可。

+1

这是总的意义。 我想我只是想办法复杂。 – 2013-03-12 12:39:02

+0

quad()通常需要3个参数。尝试np.trapz(Y),例如其中Y = min(f,g)是浮点数的单个阵列,f和g是有序的且长度相同。 – Quetzalcoatl 2018-02-20 23:03:37