用Python从联合概率分布生成二元随机数

2024-10-03 09:15:38 发布

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

在两个参数h和t上有两个分布。h为威布尔分布,而t以h为条件,且为对数正态分布:

f_H = np.exp(-(h / alpha) ** beta) * (beta / alpha) * (h / alpha) ** (beta - 1)
f_TIH = np.exp(-(np.log(t) - mu_h) ** 2.0 / (2.0 * sigma_h ** 2)) / (t * sigma_h * np.sqrt(2.0 * np.pi))

其中:

mu_h = a0 + a1 * h ** a2
sigma_h = b0 + b1 * np.exp(b2 * h)

以及:

a0 = 0.7
a1 = 0.282
a2 = 0.167
b0 = 0.07
b1 = 0.3449
b2 = -0.2073
alpha = 1.76
beta = 1.59

h和t的联合PDF如下所示:

f_joint = f_H * f_TIH

我的问题是如何从联合PDF中随机抽取h和t的值


Tags: alphaa2参数pdfa1npb0条件