【发布时间】:2015-09-25 07:04:50
【问题描述】:
对于模拟研究,我需要创建 nxn 协方差矩阵。例如,我可以输入 2x2 协方差矩阵,如
[,1] [,2]
[1,] 1.0 1.5
[2,] 1.5 2.0
进入一个 r 函数/对象:
var <- c(1,2) ## variances
covar <- c(1.5,1.5) ## covariance(s)
mat <- matrix(c(var[1],covar[1],covar[2],var[2]),ncol=length(var))
然后我只需要更改 var 和 covar 值即可形成矩阵。但不幸的是,我处理的不仅仅是 2x2s,而是 2x2:30x30 甚至更高!那么是否可以为 r 中的任何 nxn 维矩阵只编写一个函数?
【问题讨论】:
-
所以你的问题是:你有一个大小为 n 的方差向量,一个大小为 n*(n-1) 的协方差向量,你想建立你的 n*n 矩阵吗?
-
协变量向量的顺序是什么? (这对构建矩阵很重要......)
-
顺便说一下,不要调用向量
var,而是variance,例如var是一个函数的名称...