[R] Partial correlations and p-values
Peter Ehlers
ehlers at ucalgary.ca
Thu Nov 12 02:50:14 CET 2009
dadrivr wrote:
> I'm trying to write code to calculate partial correlations (along with
> p-values). I'm new to R, and I don't know how to do this. I have searched
> and come across different functions, but I haven't been able to get any of
> them to work (for example, pcor and pcor.test from the ggm package).
>
> In the following example, I am trying to compute the correlation between x
> and y, while controlling for z (partial correlation):
>
> x <- c(1,20,14,7,9)
> y <- c(5,6,7,9,10)
> z <- c(13,27,16,5,4)
>
> What function can I append to this to find this partial correlation? Many
> thanks!
I'm not sure what you need, but does this give you what
you want:
xres <- residuals(lm(x ~ z))
yres <- residuals(lm(y ~ z))
cor(xres, yres)
# [1] 0.9778857
or
ct <- cor.test(xres, yres)
ct$estimate # 0.9978857
ct$p.value # 0.003934582
-Peter Ehlers
>
>
More information about the R-help
mailing list