# Re: st: Computing semipartial correlations

 From "Scott Merryman" To Subject Re: st: Computing semipartial correlations Date Thu, 11 Dec 2003 18:35:38 -0600

```It sounds like you already have the solution in hand; in addition there is
Philip Ender's -partcorr- that computes partial and semipartial correlations.

-findit semipartial correlation- will bring it up,

Scott

----- Original Message -----
From: "Richard Williams" <Richard.A.Williams.5@nd.edu>
To: <statalist@hsphsun2.harvard.edu>
Sent: Thursday, December 11, 2003 1:53 PM
Subject: Re: st: Computing semipartial correlations

> At 11:54 AM 12/11/2003 -0500, Richard Williams wrote:
> >The pcorr routine uses the following formula to compute partial correlations:
> >
> >t/sqrt(t^2 + N - K -1) where N = Sample size and K = # of X variables
> >
> >This is not the most intuitive formula in the world, but it works! I would
> >like to modify the program to compute semipartial correlations.  Does
> >anybody know of a similarly straightforward formula that would do
> >this?  pcorr runs a regress command and then uses the saved estimates to
> >do its calculations.  Thanks for any input.
>
> I figured out the answer to my own question, in case anybody else is
> interested.  The formula for a semipartial is, of course,
>
> t * sqrt((1-R^2)/(N-K-1))
>
> (I actually did a proof of this 7 years ago that I had completely forgotten
>
> To implement this in the pcorr command, you drop this line
>
> */ %9.4f `s'*sqrt(r(F)/(r(F)+`NmK')) /*
>
> and replace it with
>
> */ %9.4f `s'*sqrt(r(F)* ((1-e(r2))/`NmK')) /
>
> Also, change the program define line to pcorr2 (or perhaps semicorr) and
> have the program print out Semipartial instead of Partial. I imagine
> somebody who is a little more skilled than I currently am could rewrite the
> routine to print out both the partials and the semipartials.
>
> Given that it is fairly easy to modify pcorr to give both partial and
> semipartial correlations, can I request that Stata do so?  Or, if I
> eventually just do it myself, how would I make a semicorr or a pcorr2
> routine available to the world?  Thanks.
>
>

*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/
```