我有以下联合分布:
我想通过逆方法模拟这个分布的样本,但我不知道我的过程是否正确。
我试过的
为了模拟上面的随机变量,我必须计算逆边际 cdf,然后对于我将能够模拟随机变量。但我不知道在这种情况下如何计算边际 cdf。任何提示或建议都非常受欢迎!
我有以下联合分布:
我想通过逆方法模拟这个分布的样本,但我不知道我的过程是否正确。
为了模拟上面的随机变量,我必须计算逆边际 cdf,然后对于我将能够模拟随机变量。但我不知道在这种情况下如何计算边际 cdf。任何提示或建议都非常受欢迎!
作为记录,整合出给出边际密度
通过检查(或通过替换集成) 这具有分配功能
有条件的的密度正比于其分布函数为
因此,如果我们绘制一个统一变量在范围内 将具有相同的分布然后如果我们独立绘制另一个统一变量求解方程
为了会给我们一个认识从密度分布
一个实际的例子是这个R
实现,它从这个分布中提取n
iid值:
rjoint <- function(n) {
x <- (-log(runif(n)))^(1/3)
y <- runif(n)^(1/(1+x))
cbind(x, y)
}
(通过申请可以节省一点时间至它也具有均匀分布。)
返回值是一个数组与在第一列和在第二。
绘制一千万个值x <- rjoint(1e7)
(在这台机器上需要两秒钟)的结果如下图所示,其中生成的 2D 密度的等高线绘制在彩色等高线图上(两者都使用相同的等高线间隔,范围从靠近底部在顶部)。
协议看起来不错。
这个问题有两种明显的方法:整合出或整合出去 两者都有效,但后者太讨厌了,我不知道如何手工完成。Wolfram 语言 13 引擎找到了一个表达式:
但是,它不知道如何简化或反转此功能;-)。