partial_and_semipartial_correlation
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
partial_and_semipartial_correlation [2019/05/30 10:31] – [Semipartial cor] hkimscil | partial_and_semipartial_correlation [2019/11/27 15:35] – [Partial and semi-partial correlation] hkimscil | ||
---|---|---|---|
Line 2: | Line 2: | ||
references | references | ||
{{https:// | {{https:// | ||
- | + | [{{ : | |
Simple explanation of the below procedures is like this: | Simple explanation of the below procedures is like this: | ||
* Separately regress Y and X1 against X2, that is, | * Separately regress Y and X1 against X2, that is, | ||
* regress Y against X2 AND | * regress Y against X2 AND | ||
- | * regression | + | * regress |
* Regress the Y residuals against the X1 residuals. | * Regress the Y residuals against the X1 residuals. | ||
In the below example, | In the below example, | ||
- | * regress gpa against sat | + | * regress gpa against sat (and get residuals of gpa = a + b) |
- | * regress clep against sat | + | * regress clep against sat (and get residuals of clep = b + c) |
- | * regress the gpa residuals against clep residuals. | + | * regress the gpa residuals against clep residuals. |
Take a close look at the graphs, especially, the grey areas. | Take a close look at the graphs, especially, the grey areas. | ||
+ | |||
+ | |||
For more, see https:// | For more, see https:// | ||
Line 82: | Line 83: | ||
> | > | ||
> </ | > </ | ||
+ | |||
+ | linear model | ||
+ | '' | ||
+ | '' | ||
+ | |||
+ | |||
{{lm.gpa.sat.png? | {{lm.gpa.sat.png? | ||
Line 88: | Line 95: | ||
[1] 0.7180529</ | [1] 0.7180529</ | ||
- | + | Collect | |
- | < | + | - sat, |
+ | - gpa, | ||
+ | - predicted value (y hat), | ||
+ | - residuals (error) | ||
+ | And see correlation among themselves. | ||
+ | < | ||
+ | > cor.gpa.sat <- as.data.frame(cbind(sat, | ||
> colnames(cor.gpa.sat) <- c(" | > colnames(cor.gpa.sat) <- c(" | ||
> round(cor.gpa.sat, | > round(cor.gpa.sat, | ||
Line 104: | Line 117: | ||
10 550 2.9 3.13544 -0.23544 | 10 550 2.9 3.13544 -0.23544 | ||
> | > | ||
- | > round(cor(cor.gpa.sat), | + | round(cor(cor.gpa.sat), |
sat | sat | ||
sat 1.000 0.718 1.000 0.000 | sat 1.000 0.718 1.000 0.000 | ||
Line 111: | Line 124: | ||
resid 0.000 0.696 0.000 1.000 | resid 0.000 0.696 0.000 1.000 | ||
> | > | ||
- | > </ | + | </ |
+ | Note that | ||
+ | * r (sat and gpa) = .718 (sqrt(r< | ||
+ | * r (sat and pred) = 1. In other words, predicted values (y hats) are the linear function of x (sat) values ('' | ||
+ | * r (sat and resid) = 0. residuals are orthogonal to the independent (sat) values. | ||
===== regression gpa against clep ===== | ===== regression gpa against clep ===== | ||
< | < | ||
Line 140: | Line 157: | ||
Residual standard error: 0.1637 on 8 degrees of freedom | Residual standard error: 0.1637 on 8 degrees of freedom | ||
Multiple R-squared: | Multiple R-squared: | ||
- | F-statistic: | + | F-statistic: |
+ | </ | ||
+ | |||
+ | '' | ||
+ | |||
< | < | ||
Line 146: | Line 168: | ||
res.lm.gpa.clep <- lm.gpa.clep$residuals | res.lm.gpa.clep <- lm.gpa.clep$residuals | ||
</ | </ | ||
+ | |||
{{lm.gpa.clep.png? | {{lm.gpa.clep.png? | ||
+ | |||
< | < | ||
# get cor between gpa, sat, pred, and resid from. lm.gpa.clep | # get cor between gpa, sat, pred, and resid from. lm.gpa.clep | ||
- | cor.gpa.clep <- as.data.frame(cbind(gpa, clep, lm.gpa.clep$fitted.values, | + | cor.gpa.clep <- as.data.frame(cbind(clep, gpa, lm.gpa.clep$fitted.values, |
- | colnames(cor.gpa.clep) <- c("gpa", "clep", " | + | colnames(cor.gpa.clep) <- c("clep", "gpa", " |
cor(cor.gpa.clep) | cor(cor.gpa.clep) | ||
</ | </ | ||
- | < | + | < |
- | gpa 1.0000 0.8763 0.8763 0.4818 | + | > round(cor(cor.gpa.clep),4) |
- | clep | + | clep gpa pred resid |
- | pred 0.8763 1.0000 1.0000 0.0000 | + | clep |
- | resid 0.4818 0.0000 0.0000 1.0000 | + | gpa |
- | > </ | + | pred 1.0000 |
+ | resid 0.0000 0.4818 0.0000 1.0000 | ||
+ | > | ||
+ | |||
+ | sat | ||
+ | sat | ||
+ | gpa | ||
+ | pred 1.0000 | ||
+ | resid 0.0000 0.6960 | ||
+ | > | ||
+ | </ | ||
Line 190: | Line 224: | ||
> | > | ||
</ | </ | ||
+ | |||
+ | '' | ||
+ | '' | ||
+ | |||
+ | '' | ||
+ | '' | ||
+ | '' | ||
+ | |||
+ | One other thing that we could do help determine a pragmatic argument is to regress GPA on both SAT and CLEP at the same time to see what happens. If we do that, we find that R-square for the model is .78, F = 12.25, p < .01. The intercept and b weight for CLEP are both significant, | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | In this case, we would conclude that the significant unique predictor is CLEP. Although SAT is highly correlated with GPA, it adds nothing to the prediction equation once the CLEP score is entered. (These data are fictional and the sample size is much too small to run this analysis. It's there for illustration only.) | ||
+ | |||
+ | Now suppose we wanted to argue something a little different. Suppose we had a theory that said that all measures of math achievement share a common explanation, | ||
+ | |||
+ | |||
===== checking partial cor 1 ===== | ===== checking partial cor 1 ===== | ||
< | < |
partial_and_semipartial_correlation.txt · Last modified: 2023/05/31 08:56 by hkimscil