In short
A partial correlation is reported like any other correlation, with one difference almost everybody skips: the degrees of freedom drop to N − 2 − k, where k is the number of variables controlled. With 150 participants and one control the line reads rxy·z(147) = .21, p = .009, 95% CI [.05, .36], not r(148). The partial removes the control's variance from both variables; the semipartial removes it from the predictor only, so it comes out smaller or equal (sr = .17 on the same data) and its square is exactly the increment in R² that predictor adds to the regression (sr² = .03 = ΔR²). The controlling-for clause is not decoration: the covariates are named in the same sentence as the number, or in the table note, because r = .21 with no statement of what was controlled is not a result. And be careful reading it as experimental control: statistical adjustment removes only the part of the confounder your measure actually captures.
Your raw correlation between rumination and depressive symptoms came out at .48, a reviewer asked you to control for trait anxiety, you ran it, and it dropped to .21. That is where the real questions start: which symbol goes in, whether the degrees of freedom are still the same, whether the Part column in SPSS is the same thing as the Partial column sitting right next to it, and how to word the sentence without implying you ran an experiment. Here are both coefficients, the partial and the semipartial, worked through one example from start to finish. If what you wanted was the ordinary zero-order correlation, that lives in how to report a correlation in APA 7.
What goes into the line
Four things: the symbol with the controlled variables, the degrees of freedom, the p value and the confidence interval. The full template is rxy·z(147) = .21, p = .009, 95% CI [.05, .36]. What separates it from an ordinary correlation is not the symbol, which many journals leave as a bare r, but the two things attached to it: degrees of freedom that have dropped, and a clause saying what you controlled.
The centered dot in the subscript separates the variables you are correlating from the ones you have removed. rxy·z is the correlation between x and y controlling for z, and with two controls it is written rxy·zw. The r is italicized and the subscript stays upright, like any descriptive subscript. It carries no leading zero, because a correlation cannot exceed 1: .21, never 0.21, and the interval bounds follow suit, [.05, .36]. If it comes out negative the sign goes inside everything: r(147) = −.21, 95% CI [−.36, −.05].
Plenty of psychology journals never use the subscript at all: they write the clause out and leave the r bare, as in “the partial correlation between rumination and depressive symptoms, controlling for trait anxiety, was r(147) = .21”. Both options are correct and both say the same thing. The third option, the one that actually shows up in manuscripts, is not: r = .21 with no subscript, no degrees of freedom and no clause, leaving the reader to guess whether anything was adjusted for.
APA 7 asks for a confidence interval wherever one can be computed, and here one can. It comes from Fisher's z transformation with a standard error of 1/√(N − k − 3), where every controlled variable costs you again: with N = 150 and one control the denominator is 146, not 147. SPSS does not print it in the PARTIAL CORR output, and neither does the ppcor package in R: it hands back the coefficient, the test statistic, N and the number of controls, so the degrees of freedom fall out on their own, but you build the interval yourself from Fisher's z.
Partial or semipartial: whose variance you remove
Both remove the same thing, but not from the same places. The partial removes the control from both variables: it correlates the residuals of x after regressing it on z with the residuals of y after regressing it on z. The semipartial removes it from the predictor only: it correlates the residuals of x with the whole untouched y. That is where the name comes from, since only one of the two has been partialled, and that is the coefficient SPSS labels “part” in the regression coefficients table, in the column beside “partial”.
Numbers make this clearer than definitions do. In 150 students, rumination correlates .48 with depressive symptoms and .55 with trait anxiety, and trait anxiety correlates .62 with symptoms. The partial divides by both cleaned variances: (.48 − .55 × .62) / √[(1 − .55²)(1 − .62²)] = .21. The semipartial divides by the predictor's alone: (.48 − .55 × .62) / √(1 − .55²) = .17. Same numerator, different denominator, and because the partial's denominator is always the smaller one, the semipartial can never be larger in absolute value.
Each answers a different question. The partial of .21 says that among people with the same trait anxiety, ruminating more goes with more symptoms, and that this association covers 4% (.21² = .04) of what is left of the symptom variance once anxiety has been taken out. The semipartial of .17 says that rumination accounts for 3% (.17² = .03) of the total symptom variance, the variance you actually measured. The partial always sounds better because its denominator is smaller, and that is precisely why you have to say which one you are reporting.
If your question is “are they still related when the confounder is held constant?”, report the partial. If it is “how much does this predictor add to what the others already explained?”, report the semipartial, which is read against the total and lines up with your model's R². Reporting both is no sin, and it is what every SPSS coefficients table quietly does. What you cannot do is report the partial and call it unique variance explained, because that is the other coefficient's job.
The degrees of freedom drop with every control
This is where half the manuscripts come apart. A zero-order correlation with N = 150 has N − 2 = 148 degrees of freedom. A partial controlling one variable has N − 2 − k = 147, with k the number of controls, because the relationship with each control was estimated from your own data and that estimate has to be paid for. With two controls, 146. With six controls and 60 participants, 52. None of this needs computing: the number is right there in the output, beside the coefficient.
The degrees of freedom are the first thing an experienced reader looks at, for a very practical reason: they are the only place in the text where you can check how many variables were genuinely controlled. If the Method says you adjusted for sex, age and baseline severity, and the Results show r(148) with 150 participants, one of those two sentences is false. It is a copy-and-paste failure rather than a statistical one, and it is exactly the kind of detail that sends a reviewer off to check everything else.
Every control costs rather more than one degree of freedom. When your controls correlate strongly with the predictor, there is little variance left for the predictor to work with, and the coefficient turns unstable: small sampling differences move it a long way and the confidence interval widens past the point of usefulness. This is ordinary multicollinearity under another name, minus the VIF table that would have warned you, because partial correlation output carries no diagnostics. With a control that correlates .80 with your predictor, look at the interval before you look at the p value.
One rule saves a lot of grief: decide how many controls go in before you look. Adding covariates until the correlation stops being significant, or until it starts, is the same fishing expedition as running four tests and keeping the one that worked. If the analysis plan had three covariates, all three go in whatever happens, and if you then want to show what other choices would have done, that is a sensitivity analysis and it gets labeled as one.
How to word the controlling-for clause
The sentence has to name what you controlled, and it has to do it where the number is. “Controlling for trait anxiety, rumination remained associated with depressive symptoms, r(147) = .21, p = .009, 95% CI [.05, .36].” “After adjusting for”, “with trait anxiety partialled out” and “controlling for” all work; APA 7 imposes none of the three and only asks that the reader understand. What does not work is “the partial correlation was significant” with no statement of what it was partial to.
In a matrix of partial correlations that belongs in the table note, not repeated in every cell: “Note. Partial correlations controlling for age and sex; df = 146.” A matrix without that note is unreadable however correct the numbers are, because an adjusted .21 and a raw .21 are different results wearing the same face. When both live in one table — the usual arrangement puts raw coefficients below the diagonal and partials above — the note says so and the reader knows which half they are in. The APA correlation table generator sets out the note and the asterisks for you.
“Controlling for” describes an arithmetic operation, not an experiment. In a cross-sectional design, controlling for anxiety does not give you two groups matched on anxiety: it removes from both variables the part a straight line can explain with the anxiety score you measured. If the relationship between anxiety and symptoms is not linear, the leftovers stay in. Writing “the effect of rumination, controlling for anxiety” promotes a correlation to an effect without doing anything to earn it; “the association between rumination and symptoms, controlling for anxiety” says the same thing and is true.
Two traps are left, and both are about substance rather than format. First, adjustment removes only the part of the confounder your instrument captures. If you measure trait anxiety with a scale whose reliability is .70, close to a third of that variance is noise, and that share does not get controlled at all: it stays in as residual confounding, and the partial you report sits closer to the raw coefficient than you think. The worse you measure the control, the less you control. Second, if the variable you are adjusting for sits on the causal path — you ruminate, you become anxious, you become depressed — controlling for it cleans nothing and erases the effect you set out to study. Before adding a covariate, decide whether it is a confounder or a mediator, because in the second case what you have is a mediation model rather than a partial correlation.
The semipartial is the bridge to regression
The square of the semipartial is the increment in R² that predictor produces when it enters last. On the same data: a model with trait anxiety alone explains R² = .38 of symptoms, and adding rumination lifts it to R² = .41. That ΔR² = .03 is exactly sr² = .17² = .03. This is not an approximation or a rounding coincidence — it is one quantity seen from two sides (Cohen et al., 2003).
The significance test is also the same one, which saves work and catches mistakes. The t for the rumination coefficient in that regression, the t for the partial correlation and the t for the semipartial are one number: t(147) = 2.63, p = .009. The F for the R² change is its square, F(1, 147) = 6.93, with the same p. If the coefficient is significant in your manuscript and the partial is not, you have not found anything interesting, you have mistyped one of the two. Reporting the whole regression is covered in how to report a regression in APA 7.
The semipartial and the standardized coefficient are not independent either: sr = β × √(1 − R²x·rest), where that R² is the predictor explained by the other predictors. In the example β = .20 and rumination shares .55² = .30 of its variance with anxiety, so sr = .20 × √(1 − .30) = .17. The two coincide only when the predictors are orthogonal, which never happens in psychological data, and that is why β and sr sometimes rank your predictors differently and why you should say which one you ranked them by.
When the plan is to enter blocks of predictors in a theoretical order, the ΔR² of each block is this same idea with several predictors inside it, and it is reported as a hierarchical regression. The semipartial is the special case where the block holds a single predictor. One uncomfortable consequence follows from all of this and is worth keeping in mind: your predictors' sr² values do not add up to the model's R² unless they are orthogonal. What is missing is shared variance, which exists and belongs to none of them.
The whole thing written out, and the four errors
Here is the complete example with both coefficients and nothing left implicit: “Rumination correlated with depressive symptoms, r(148) = .48, p < .001. Because both correlated with trait anxiety (r = .55 and r = .62), the partial correlation controlling for that variable was computed. The association held, although much reduced, rxy·z(147) = .21, p = .009, 95% CI [.05, .36]. The semipartial correlation indicates that rumination accounts for 3% of symptom variance over and above trait anxiety, sr = .17, sr² = .03, matching the increment observed when it was added to the regression model, ΔR² = .03, F(1, 147) = 6.93, p = .009.” Four sentences, both coefficients, the right degrees of freedom on each and not one causal word.
The case nobody expects is the opposite one, and it is worth recognizing because it looks like a mistake and is not. In 200 students, study hours correlate with exam performance at r(198) = .12, p = .091, which is to say nothing at all. But the students who study most are also the ones reporting the most test anxiety (r = .40), and anxiety goes with worse performance (r = −.45). Controlling for anxiety, the partial rises to r(197) = .37, p < .001. A partial can be larger than the raw coefficient and it can flip sign; when it happens it is called suppression, and it deserves a sentence of explanation rather than an awkward silence.
Four things get this analysis sent back, in descending order of frequency. Zero-order degrees of freedom copied onto the partial, r(148) where r(147) belonged. The partial called the semipartial or the other way round, almost always because the SPSS columns labeled “partial” and “part” sit side by side and nobody read the header. A controlling-for clause with nothing named in it, typical of tables inherited from another paper by the same group. And the partial sold as unique variance explained, which is the semipartial's job: .21² = .04 of what remains against .17² = .03 of the total, and that difference is the whole discussion.
Frequently asked questions
How do you report a partial correlation in APA 7?
With the symbol, the corrected degrees of freedom, the p value and the confidence interval, naming what you controlled in the same sentence: “controlling for trait anxiety, rxy·z(147) = .21, p = .009, 95% CI [.05, .36]”. The r is italicized and the subscript stays upright, with the centered dot separating the correlated variables from the controlled ones. Neither the coefficient nor the interval bounds take a leading zero, because a correlation cannot exceed 1.
What are the degrees of freedom for a partial correlation?
N − 2 − k, where k is the number of variables controlled. With 150 participants and one control that is 147, with two controls 146, and with six controls and 60 participants, 52. The zero-order version has N − 2, so if your Results show r(148) with 150 participants while the Method says you adjusted for a covariate, there is a contradiction on the page. The number comes out of the software next to the coefficient; it does not need computing, it needs copying correctly.
What is the difference between partial and semipartial correlation?
Whose variance the control is removed from. The partial removes it from both variables and answers “among people equal on the control, are they still related?”. The semipartial removes it from the predictor only and answers “how much does this predictor add against the total?”. On the same data the partial is .21 and the semipartial is .17: the numerator is identical and the partial's denominator is smaller, so the semipartial is never larger in absolute value. The semipartial is the one that lines up with regression, because sr² = ΔR².
Should I write controlling for or adjusting for?
Either, and “with X partialled out” as well. APA 7 does not prescribe the phrasing, it requires that the reader can tell what was controlled and where. What matters is that the covariates appear next to the number or in the table note, and that the verb does not promise causality: “the association between A and B, controlling for C” is accurate, whereas “the effect of A on B, controlling for C” turns a cross-sectional correlation into an effect without earning it.
Why is my partial correlation larger than the zero-order one?
Because you have a suppressor, and it is not an arithmetic slip. It happens when the control correlates with the predictor one way and with the outcome the other: study hours correlate .12 with exam performance and .40 with test anxiety, and anxiety correlates −.45 with performance; controlling for anxiety, the partial rises to .37. Anxiety was masking the relationship. When it happens, report it and explain it in a sentence, because a reader watching a coefficient grow under adjustment will suspect before they understand.
How many variables can I control for in a partial correlation?
Technically as many as your degrees of freedom allow, and in practice far fewer. Every control costs a degree of freedom and, if it correlates strongly with your predictor, leaves little variance with which to estimate the partial: the coefficient turns unstable and the interval widens. With psychological sample sizes, three or four well-justified covariates do more for you than eight added out of habit. Decide on them before you see the results: controlling until the p value behaves is fishing, not adjustment.
Is your partial correlation still carrying zero-order degrees of freedom?
It is a two-second check, and it shows whether the controlling-for clause in your Method ever reached the Results.
Run your paper through Previum →With the symbol, the corrected degrees of freedom, the p value, the confidence interval and a clause naming what you controlled, your partial correlation is reported the way APA 7 asks; add the semipartial and the reader also sees how much the predictor contributes against the total. When the hard decision is not the format but which covariates belong in the model and which are mediators in disguise, that is what my statistical consulting is for.