我开始认为如果 X 和 Y 完全相关,那么它与查看 Y 和 -Y 的相关性相同(因为 X 没有提供新信息),因此相关性为 -1。
这个对吗?
我开始认为如果 X 和 Y 完全相关,那么它与查看 Y 和 -Y 的相关性相同(因为 X 没有提供新信息),因此相关性为 -1。
这个对吗?
提示:一般来说,所以,工作找出通常是什么,以及在的特殊情况下。你可能会对结果感到惊讶。
我看到这已经有一个公认的答案,但我一直更喜欢模拟而不是方程,这似乎是一个有趣的问题。我生成了一个变量从分布谁的样本量取自. 做,我只是添加了一个常数——从-至. 然后我计算了之间的相关性和. 我这样做了 10,000 次:
set.seed(1839)
cors <- sapply(1:10000, function(placeholder) {
n <- runif(1, 100, 10000)
b0 <- runif(1, 1, 100)
x <- rnorm(n)
y <- b0 + x
cor(x + y, x - y)
})
你会收到很多警告。我跑去warnings()[1:5]获得前五个:
Warning messages:
1: In cor(x + y, x - y) : the standard deviation is zero
2: In cor(x + y, x - y) : the standard deviation is zero
3: In cor(x + y, x - y) : the standard deviation is zero
4: In cor(x + y, x - y) : the standard deviation is zero
5: In cor(x + y, x - y) : the standard deviation is zero
我们仍然可以查看已定义的相关性直方图,调用hist(cors[!is.na(cors)]):
我们还可以查看这些模拟中有多少:
set.seed(1839)
sd_is_zero <- sapply(1:10000, function(placeholder) {
n <- runif(1, 100, 10000)
b0 <- runif(1, 1, 100)
x <- rnorm(n)
y <- b0 + x
ifelse(var(x - y) == 0, TRUE, FALSE)
})
然后我们可以调用prop.table(table(var_is_zero))看看生成了多少模拟:
var_is_zero
FALSE TRUE
0.1698 0.8302
但为什么有些是定义的,有些是未定义的?它与样本量有关还是与常数有关?
set.seed(1839)
dat <- as.data.frame(matrix(nrow = 10000, ncol = 3))
colnames(dat) <- c("var_is_zero", "n", "b0")
for (i in 1:10000) {
n <- runif(1, 100, 10000)
b0 <- runif(1, 1, 100)
x <- rnorm(n)
y <- b0 + x
dat$var_is_zero[i] = ifelse(var(x - y) == 0, TRUE, FALSE)
dat$n[i] = n
dat$b0[i] = b0
}
我们现在可以根据样本量、常数和交互作用来预测方差是否为零,查看结果summary(glm(var_is_zero ~ n * b0, data = dat, family = binomial())):
Call:
glm(formula = var_is_zero ~ n * b0, family = binomial(), data = dat)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.5154 0.1628 0.3039 0.5997 1.2894
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -2.613e-01 1.038e-01 -2.518 0.0118 *
n -2.114e-05 1.785e-05 -1.184 0.2362
b0 5.323e-02 2.973e-03 17.907 <2e-16 ***
n:b0 -4.011e-07 4.968e-07 -0.807 0.4195
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 9111.4 on 9999 degrees of freedom
Residual deviance: 7148.0 on 9996 degrees of freedom
AIC: 7156
Number of Fisher Scoring iterations: 6
看起来截距越大,相关性越有可能不确定。
如果是一个线性函数(完美相关的定义),那么两者和将是的线性函数,因此是彼此的线性函数。
所以,和是完全相关的。