我有一个两个变量x和y的联合密度函数,我需要在函数f(X, Y) = y*e**(-y(x+1))中使用python中的quad计算X和Y中的边缘密度函数
from scipy.integrate import dblquad import numpy as np import math
def f(x,y):
return y*math.exp(-y(x+1)) # Joint Density Function
ans,err = dblquad(f,0,math.inf, lambda x: 0 , lambda x:math.inf)
ans我在Jupyter notebook中尝试了上面的代码,但是对于边缘密度函数,我们只需要限制x和y的积分,上面的代码抛出了一个错误。
发布于 2019-10-12 09:29:37
也许这能帮到你
from sympy.abc import x,y
from sympy import integrate
fxy = y*e**((-y*x-y))
fy = integrate(fxy,(x,0,ifty))
fx = integrate(fxy,(y,0,ifty))
fy
fx发布于 2019-11-08 16:12:02
您的Joint Density Function f函数中存在拼写错误。您在math.exp函数中遗漏了-y和(x+1)的乘积的一个*。修复这个打字错误,你的程序应该可以工作。
def f(x, y):
return y*math.exp(-y*(x+1))https://stackoverflow.com/questions/58349012
复制相似问题