考虑到 X1 的方差、X2 的方差以及 X1 和 X2 之间的协方差,有没有办法使用 R(非手动)计算 U = 2X1 - X2 和 V = X1 + 2X2 的相关性?
问问题
106 次
1 回答
3
两个随机变量的协方差矩阵是 2x2 对称矩阵,其对角线是两个分量的方差,非对角线元素是协方差。也就是说,如果 X1 和 X2 的方差分别为 v1 和 v2 以及协方差 v12,那么 X 的协方差矩阵将为matrix(c(v1, v12, v12, v2), 2)
。我们可以很容易地形成一个协方差矩阵,cov(d)
其中d
是一个两列数据矩阵。具体来说,让我们形成内置的两列数据框的协方差矩阵BOD
。然后我们可以使用下面的公式得到变换的协方差矩阵,并使用cov2cor
得到相关矩阵。相关矩阵的上(以及对称下)非对角元素将是所需的相关性。不使用任何包。
# inputs: covariance matrix V and transformation matrix M
V <- cov(BOD)
M <- matrix(c(2, 1, -1, 2), 2)
cov2cor(M %*% V %*% t(M))[1, 2]
## [1] -0.3023
BOD
使用双重检查变换M
,然后计算其相关性。我们看到结果是一样的。
cor(as.matrix(BOD) %*% t(M))[1, 2]
## [1] -0.3023
于 2017-02-28T14:55:56.483 回答