首页 > 解决方案 > 基于条件生成随机变量的函数

问题描述

我想根据第三个变量生成两个随机变量。

所以会有一个预定义的标准正态变量'c',我会生成变量a和b,使得c=ab,其中a,b都是正态分布的。因此,如果 c 的均值为 mu_c,标准差为 sd_c,a 和 b 的均值分别为 mu_a 和 mu_b 以及 sds sd_a 和 sd_b,那么 mu_c=mu_a-mu_b,我们有 sd_c = sd_a+sd_b。我为我缺少代码而道歉,但我对如何实现这个变量生成感到困惑..

标签: rnormal-distribution

解决方案


我认为您可以使用下面的代码。我不明白为什么您需要 a 和 b 值的均值和标准差,但您可以使用下面的书面代码进行控制。

a=rnorm(100)
b=rnorm(100)
mu_a=mean(a,na.RM=TRUE)
sd_a=sd(a,na.RM=TRUE)
mu_b=mean(b,na.RM=TRUE)
sd_b=sd(b,na.RM=TRUE)

mu_c=mu_a-mu_b
sd_c=sd_a+_sd_b
c=a-b
mu_c2=mean(c,na.RM=TRUE)
sd_c2=sd(c,na.RM=TRUE)

推荐阅读