gpt4 book ai didi

r - 矩阵的成对偏相关,由一个变量控制

转载 作者:行者123 更新时间:2023-12-04 12:19:34 25 4
gpt4 key购买 nike

我有一个 100 列的表,我想对其运行成对的偏相关,使用 ppcor 中的 pcor.test 函数控制第 100 列的变量包裹。 R 中是否有任何偏相关函数,我可以使用类似 rcorr 的返回值,获取整个矩阵的成对相关但仅由一个变量控制?

最佳答案

这听起来像是一个 n 列矩阵,你想要输出前 n-1 列的成对相关的 (n-1) x (n-1) 矩阵,控制最后一个(使用 pcor.test 函数来自 ppcor 包)。

您可以使用 sapply 函数执行此操作,遍历每一列并使用 pcor.test 计算它与所有其他列的相关性:

# Sample dataset with 5 columns
set.seed(144)
dat <- matrix(rnorm(1000), ncol=5)

# Compute the 4x4 correlation matrix, controlling for the fifth column
library(ppcor)
sapply(1:(ncol(dat)-1), function(x) sapply(1:(ncol(dat)-1), function(y) {
if (x == y) 1
else pcor.test(dat[,x], dat[,y], dat[,ncol(dat)])$estimate
}))
# [,1] [,2] [,3] [,4]
# [1,] 1.000000000 -0.01885158 0.06037621 0.004032437
# [2,] -0.018851576 1.00000000 0.09560611 0.097152907
# [3,] 0.060376208 0.09560611 1.00000000 0.105123093
# [4,] 0.004032437 0.09715291 0.10512309 1.000000000

关于r - 矩阵的成对偏相关,由一个变量控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30198968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com