Why does meanEffectSize() use sqrt((varX + varY)/2) for the paired cohensD calculation?
14 views (last 30 days)
Show older comments
Samantha Michalka
on 10 Jun 2023
Commented: Samantha Michalka
on 14 Jun 2023
I have typically seen Cohen's d for a paired data set calculated using the std(x-y), which is also the same as the std reported by running ttest(x,y). However, the meanEffectSize function appears to use stddev = sqrt((varX + varY)/2). The meanEffectSize function is giving me a different effect size than if I calculate it in the way I've typically seen. Does this alternate calculate relate to the use of hedgesCorrection or is it separate from this?
0 Comments
Accepted Answer
Ive J
on 11 Jun 2023
Edited: Ive J
on 11 Jun 2023
x = [10 12 15 8 11];
y = [14 18 16 12 13];
d = mean(x-y)/std(x-y)
eff = meanEffectSize(x, y, "Paired", true, "Effect", "cohen")
And yes, you are correct, the difference is because of hedgesCorrection. Also apparently, the function considers within subject correlation. Let's check it in R with effsize::cohen.d
%# in R
% x = c(10 ,12, 15, 8, 11);
% y = c(14 ,18 ,16,12,13);
% effsize::cohen.d(x, y, paired = T, within = F, hedges.correction = F)
Cohen's d
d estimate: -1.744163 (large)
95 percent confidence interval:
lower upper
-3.3816056 -0.1067208
% effsize::cohen.d(x, y, paired = T, within = T, hedges.correction = T)
Hedges's g
g estimate: -1.084754 (large)
95 percent confidence interval:
lower upper
-1.8930902 -0.2764184
More Answers (0)
See Also
Categories
Find more on Particle & Nuclear Physics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!