使用R计算两个相关正态随机变量的比率的分位数

时间:2018-09-13 00:35:51

标签: r correlation normal-distribution

让A是一个正态分布的随机变量,平均值为20.2,标准差为1.1

让B是一个正态分布的随机变量,平均值为12.3,标准差为2.4

让我们假设A和B之间的相关性是0.5

让C = A / B

我想计算C分布的第5个百分位数。

以下是我在R中进行计算的尝试:

require(MASS)

num_of_sim = 10000

mu_a = 20.2
sigma_a = 1.1

mu_b = 12.3
sigma_b = 2.4

corr = 0.5

sigma_matrix = matrix(c(sigma_a, corr, corr, sigma_b), ncol = 2)

correlated_rand_num = mvrnorm(num_of_sim, mu = c(mu_a, mu_b), Sigma = sigma_matrix)

c_vector = correlated_rand_num[,1]/correlated_rand_num[,2]

quantile(c_vector, 0.05)

从上面的代码中可以看到,我使用了蒙特卡洛模拟来估计C的分布。

有没有一种方法可以在R中没有蒙特卡罗模拟的情况下进行计算?

如果没有,是否有更好的方法在R中进行蒙特卡洛模拟?

0 个答案:

没有答案