例如,您可以从二元正态分布生成数据。方差-协方差矩阵的非对角项是协方差。在 R 中,这可以通过rmvnorm轻松完成。
示例
生成实现,其中
和这样即。1000X=(X1,X2)′∼N(μ,Σ)
μ=(−1,5)′,Σ11=V(X1)=0.7,Σ22=V(X2)=0.1
Σ12=Σ21=Cov(X1,X2)Cor(X1,X2)=0.85
> #------load the package------
> library(mvtnorm)
> #----------------------------
>
> #------compute the covariance such that cor(X1, X2) = 0.85------
> covariance <- 0.85 * sqrt(0.7) * sqrt(0.1)
> #---------------------------------------------------------------
>
> #------variance-covariance matrix------
> sigma <- matrix(c(0.7, covariance, covariance, 0.1), nrow=2, byrow=TRUE)
> sigma
[,1] [,2]
[1,] 0.7000000 0.2248889
[2,] 0.2248889 0.1000000
> #--------------------------------------
>
> #------data generation------
> test <- rmvnorm(n=1000, mean=c(-1, 5), sigma=sigma)
> #---------------------------
>
> #------compute the empirical correlation on this particular data------
> cor(test[, 1], test[, 2])
[1] 0.8478849
> #---------------------------------------------------------------------
注意:您还可以根据线性回归模型生成数据:。X2=a+bX1+ϵ