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




______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to