基于三个相关相关系数的总解释方差

问题描述 投票:0回答:1

当仅知道三个相关系数时,有什么方法可以计算由两个因变量 y 和 z 解释的变量 x 的总解释方差吗?

假设有以下相关性(但不是原始数据):

xy = 0.71

xz = 0.25

yz = 0.33

那么 x 的总解释方差是多少?

我通过(半)偏相关的几种方法得到的值> 1。 有谁知道这种情况的公式吗?

提前非常感谢!

statistics dependencies correlation
1个回答
0
投票
如果 x 由 y 和 z 预测,则您要查找的值是 R

2,即 x 由 y 和 z 解释的总方差。 这是一篇解释这一点的文章,从中我得到了公式:你可以计算 R2 来自多元线性回归中的相关系数?

如果您熟悉 R,我编写了一些代码来验证您的特定示例:

# Correlations xy <- 0.71 xz <- 0.25 yz <- 0.33 # Correlation of each predictor with dependent variable r_pred_DV <- matrix(c(xy, xz), ncol = 1) # Correlation between predictors r_pred_pred <- matrix(c(1, yz, yz, 1), ncol = 2) R_sq <- t(r_pred_DV) %*% solve(r_pred_pred) %*% r_pred_DV # Same thing with example data: library(faux) # for data simulation set.seed(1234) n <- 50 y <- rnorm(n) z <- rnorm_pre(y, r = yz, empirical = TRUE) x <- rnorm_pre(data.frame(y, z), r = c(xy, xz), empirical = TRUE) data <- data.frame(y, z, x) cor(data) # correlation matrix is the same model <- lm(x ~ y + z, data = data) summary(model)$r.squared # same as with formula
    
© www.soinside.com 2019 - 2024. All rights reserved.