Crawford-Howell t-test
23 views (last 30 days)
Show older comments
Hello,
I need to perform a Crawford-Howell t-test between single cases and normative groups of controls.
Does anyone have any code for it in Matlab, or is able to convert the code to matlab code?
Thanks!
Answers (2)
the cyclist
on 4 Oct 2014
The MATLAB Statistics Toolbox has a built-in function ttest2(). The result of using this function on a single case vs controls, for example,
[h p ci stats] = ttest2(5,[1 2 3])
gives me the same result (to several decimal places) as the R code in that link.
(This is just a bit puzzling to me, since ttest2() is just a standard t-test, and you are suggesting that Crawford-Howell is something other than that. But, the results are what they are.)
1 Comment
the cyclist
on 5 Oct 2014
I was able to replicate the example on the bottom right of page 483 of the Crawford-Howell table:
kase = 33;
x = 26.457514;
kontrol = [50-x repmat(50,1,13) 50+x]; % This has mean 50 and standard deviation 10, as specified in the paper's example.
[h p ci stats] = ttest2(kase,kontrol)
Star Strider
on 4 Oct 2014
Edited: Star Strider
on 4 Oct 2014
I don’t have ‘R’, so I transliterated it as best I could understand it. (I won’t post it as a File Exchange contribution, since I have no desire to pay US$39 to download the paper to be sure I got it correct.)
It runs. I will let you determine if it gives correct answers:
function [tval,degfre,pval] = CrawfordHowell(kase,kontrol)
lenk = length(kontrol);
tval = (kase - mean(kontrol))./(std(kontrol).*sqrt((lenk+1)./lenk));
degfre = lenk-1;
pval = 2*(1-tcdf(abs(tval),degfre));
end
[t,d,p] = CrawfordHowell(1, rand(1,10)) % Test
I used ‘kase’ and ‘kontrol’ because ‘case’ is a reserved word in MATLAB and I just decided to have fun with ‘kontrol’.
See Also
Categories
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!