如何在Scipy.stats中使用边缘PDF获得联合PDF?

vd2z7a6w  于 8个月前  发布在  其他
关注(0)|答案(1)|浏览(91)

目前,我有三个边际概率密度函数。我想获得他们的联合PDF,但我不知道如何做到这一点。这似乎微不足道,但在谷歌搜索后找不到答案。

import matplotlib.pyplot as plt
import numpy as np
from scipy import stats

mu_0 = 0
sigma_0 = 1
loc_proposal_dist = stats.norm(loc = mu_0, scale = sigma_0)
scale_proposal_dist = stats.halfnorm() # sigma0_2 = 1 I THINK (CHECK)
df_proposal_dist = stats.randint(a=1, b=101) # df ~ Unif{1, 2, ..., 100}
joint_pdf = loc_proposal_dist * scale_proposal_dist * df_proposal_dist # Doesn't work
vohkndzv

vohkndzv1#

假设他们是独立的边缘,那么联合将是他们的产品。因此,要评估联合PDF,您只需评估:

from scipy.stats import a_pdf, b_pdf, c_pdf
a_pdf(*args_a).pdf(a)*b_pdf(*args_b).pdf(b)*c_pdf(*args_c).pdf(c)

哦,对你来说:

joint_pdf = lambda loc,scale,df: loc_proposal_dist.pdf(loc) *
                                 scale_proposal_dist.pdf(scale) * 
                                 df_proposal_dist.pdf(df) # Works!

相关问题