gpt4 book ai didi

r - 偏相关值大于 R 中的正态相关值

转载 作者:行者123 更新时间:2023-12-04 02:58:48 24 4
gpt4 key购买 nike

我正在处理一个大型数据集(700 万行),试图了解各个自变量与因变量之间的相关性。当我运行 pcor(dataset) 时,如果与运行 cor(dataset) 时相比,这会导致更高的相关性。

我的数据集有 6 个因变量和 84 个自变量。我找到了 每个 因变量与 84 个独立变量的偏相关。

我的自变量是文本类型(75 个类别)的字数,以及一些其他社会变量(所有数字)等性别。

我的问题是:我不确定为什么在 R 中使用 pcor() 时相关性高,而使用 cor() 时相关性非常弱。这是偏相关的正常行为吗?

最佳答案

如果您想知道偏相关系数是否可以大于“完全”相关系数,请考虑以下示例。

让我们看一下 ppcor reference manual 中的示例数据

df <- data.frame(
hl = c(7,15,19,15,21,22,57,15,20,18),
disp = c(0.000,0.964,0.000,0.000,0.921,0.000,0.000,1.006,0.000,1.011),
deg = c(9,2,3,4,1,3,1,3,6,1),
BC = c(1.78e-02,1.05e-06,1.37e-05,7.18e-03,0.00e+00,0.00e+00,0.00e+00 ,4.48e-03,2.10e-06,0.00e+00))

根据原始论文,数据涵盖了酵母蛋白中序列和功能进化之间的关系,可从 [Drummond et al., Molecular Biology and Evolution 23, 327–337 (2006)] 获得。 .

我们有兴趣探索hldisp 之间的相关性。

hldisp之间的线性关系

让我们开始绘制 hl 作为 disp 的函数

library(ggplot2)
ggplot(df, aes(hl, disp)) +
geom_point()

enter image description here

标准(“完整”)Pearson 乘积矩相关系数由下式给出

with(df, cor(hl, disp))
#[1] -0.2378724

从绘图和 cor 结果可以明显看出,在不控制任何其他变量的情况下,hldisp 之间的线性关系不是非常强壮。

偏相关

回顾一下定义:给定混杂变量 Z 的 X 和 Y 之间的偏相关定义为 X 对 Z 和 Y 对 Z 的线性回归产生的残差的相关性。

让我们通过绘制两个相应线性模型 hl ~ deg + BCdisp ~ deg + BC 的残差来可视化部分相关。

ggplot(data.frame(
res.x = lm(hl ~ deg + BC, df)$residuals,
res.y = lm(disp ~ deg + BC, df)$residuals)) +
geom_point(aes(res.x, res.y))

enter image description here

两个残差的线性相关性非常明显,表明hldisp 之间存在显着的偏相关。让我们通过计算 hldisp 之间的部分相关性来确认,同时控制来自 degBC

pcor.test(df$hl, df$disp, df[, c("deg","BC")])
# estimate p.value statistic n gp Method
#1 -0.6720863 0.06789202 -2.223267 10 2 pearson

结论

当我们控制混杂变量时,hldisp 之间的 Pearson 乘积矩相关系数大于我们时的相关系数控制混杂因素。

关于r - 偏相关值大于 R 中的正态相关值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51236206/

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