微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 R 中模拟对多个响应的不一致影响

如何解决在 R 中模拟对多个响应的不一致影响

我想在 R 中模拟以下内容。设 X 是一个随机变量,取值为 {0,1,2} 和​​ Y,Z 两个任意连续分布的随机变量:

  1. 如何生成 X、Y 和 Z,使 Y 和 Z 之间的 Pearson 相关性非常高(例如 r = 0.8),而它们各自与 X 的相关性却大不相同?.

  2. 换句话说,假设 cor(Y,Z) = r,r 相对较大,哪些 X、Y 和 Z 使 cor(X,Y) 和 cor(X,Z) 最小?

  3. 如何不仅生成两个 (Y,Z) 而且生成 k 个变量 (Y_1,Y_2,...,Y_k) 来满足前面的要求(它们具有非对角元素 = r 的相关矩阵,其中r 非常高),但它们与 X 的相关性非常不同))?

解决方法

1-2。 Y~N(0,1),Z~N(Y,0),X = [Z

Y <- rnorm(100)
Z <- rnorm(100,Y)
X = I(Z<Y) + I(Y<0)
cbind(Y,Z,X) %>% 
    cor()

       Y          Z          X
Y  1.0000000  0.7545677 -0.6593067
Z  0.7545677  1.0000000 -0.8240605
X -0.6593067 -0.8240605  1.0000000

我将离开 3. 作为练习。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。