1

假设我想创建 1000 个具有预先指定相关性的变量。

我将从创建以下形式的相关矩阵开始:

a<-matrix(c(1,.8,.8,.8,1,.8,.8,.8,1),3)

显然这可以为 3 个变量手动编码,但我怎样才能轻松地为 1000 个变量创建相同的东西呢?每个相关性都应该相同(即 0.8)?

4

1 回答 1

3
example <- matrix(rep(0.8,25),5,5)

或者正如@Vincent 指出的那样,matrix(0.8,5,5)要好得多。

diag(example) <- 1

> example
     [,1] [,2] [,3] [,4] [,5]
[1,]  1.0  0.8  0.8  0.8  0.8
[2,]  0.8  1.0  0.8  0.8  0.8
[3,]  0.8  0.8  1.0  0.8  0.8
[4,]  0.8  0.8  0.8  1.0  0.8
[5,]  0.8  0.8  0.8  0.8  1.0

然后你可以把它放大到你需要的大小。在你的情况下:

mat2 <- matrix(0.8,1000,1000)
于 2013-09-11T12:36:13.910 回答