如何生成两个相关的标准正态随机变量

  统计/机器学习 概率分布 抽样方法 Python    浏览次数: 284
0

假如有两个标准正态分布$D_1$和$D_2$,并且它们的协方差是0.5。

怎么分别从$D_1$和$D_2$生成随机变量呢?

求思路。如果有python的代码更好,谢谢!

 

Gakki   2018-08-12 08:33



   2个回答 
2

先生成两个标准差为1的独立随机变量的采样$z_1,z_2$,假如要求的协方差为$\rho$,则相关的随机变量的采样$x_1=z_1$,$x_2=\rho z_1+\sqrt{1-\rho^2}z_2$。需要注意此时每个变量的标准差为1,也就是协方差矩阵的对角线都是1,此时两变量间的协方差等于相关系数。

扩展到生成N维相关随机变量$X~ \sim N(\mu,\Sigma)$,先生成N维独立随机变量$Z$,假设$CC^T=\Sigma$,则$X=\mu+CZ$。$C$可以由 Cholesky decomposition生成。

比如$N=2$时,$C=\begin{bmatrix} 1& 0 \\  \rho & \sqrt{1-\rho^2} \end{bmatrix}$

$CC^T=\begin{bmatrix} 1& \rho \\ \rho & 1 \end{bmatrix}$


SofaSofa数据科学社区 DS面经 问答 实战

Zealing   2018-08-13 09:55

1


import numpy as np
mean = [0, 0]
cov = [[1, 0], [0, 100]] 
x, y = np.random.multivariate_normal(mean, cov, 5000).T


SofaSofa数据科学社区 DS面经 问答 实战

threecifanggen   2018-08-12 17:28



  相关主题

超几何分布几何分布的关联?   0回答

关于两个正态总体抽样分布的独立性问题   1回答

两个变量不相关但是也不独立   2回答

为什么说皮尔逊相关系数是刻画了线性相关性?   2回答

python对给定的集合进行有放回抽样?   2回答

python产生一个随机置换?   1回答

自助法(bootstrap)的0.632是怎么来的?   1回答

Python计算两个数组的相关系数   3回答

两阶段抽样和分层抽样是一回事吗?   1回答

一个连续变量和一个二元变量的相关系数怎么求?   2回答

bootstrap 一般用在哪些方面   1回答

滚雪球抽样算法的实现   0回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!