[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

From |
Maarten buis <maartenbuis@yahoo.co.uk> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
Re: st: cycling paired t test (and signed rank sum test) |

Date |
Sun, 21 Oct 2007 10:45:25 +0100 (BST) |

--- Diego Bellavia <messadua@yahoo.it> wrote: > I have many (~ 500) variables to test in a paired design (I would > like to perform both a paired t-test and a signed rank sum test). First comment is that you need to apply an adjustment of the p-values to correct for the fact that you are performing that many tests. You can let Stata do that for you using the undocumented command -_mtest- To find out more about -_mtest-, type -help _mtest-. (In Stata-speak undocumenten means not in the paper manual, but there is a help file, not-documenten means there is neither an entry in the paper manual nor a help file) > To avoid typing all the variables I would like to define a double > loop to perform the test for all the variables. > Since all the variables, after the reshaping in wide format of the > dataset are in the format a1 b1 c1... and a2 b2 c2, basing on STATA > documentation I tried to implement arrays, and I ended up with > something like The example below does what you want, in addition it also gives you adjusted p-values (in this case Sidak adjust p-values, but you can choose your own favourite flavor), and I have used -matlist- to give you a nice display of the result. In the colnames you see that I call columns something like ttest:something, or ranksum:something, ttest and ranksum are the equation names and the something the column names, it gives nice output from -matlist-. Another trick I use is refering to the local i as `++i', this means: first add 1 and than use the new content of the local i. Otherwise I haven't used any trick that aren't explained in -help forvalues-, -help levelsof-, -help macrolists-, -help matrix-, -help matrix substitution-, -help matlist-, -help _mtest-, -help ttest-, and -help ranksum-. *------------------ begin example -------------------- set more off use "http://www.stata-press.com/data/r10/nlswork.dta";, clear keep idcode year ln_wage levelsof year local levs = "`r(levels)'" reshape wide ln_wage, i(idcode) j(year) local i = 0 mat rest = J(105,2,.) mat resr = J(105,4,.) foreach lev1 of local levs{ local left "`left' `lev1'" local second : list levs - left foreach lev2 of local second { ttest ln_wage`lev1' = ln_wage`lev2' local diff = r(mu_2)-r(mu_1) matrix rest[`++i',1] = `diff', r(p) signtest ln_wage`lev1' = ln_wage`lev2' matrix resr[`i',1] = r(N_neg), r(N_pos), /// r(N_tie), r(p_neg) local rowname "`rowname' `lev1'_v_`lev2'" } } _mtest adjust rest, mtest(sidak) pindex(2) matrix res = rest, r(result) _mtest adjust resr, mtest(sidak) pindex(4) matrix res = res, resr, r(result) #delimit ; matrix colnames res = ttest:diff ttest:unadj_p ttest:adj_p ranksum:N_neg ranksum:N_pos ranksum:N_tie ranksum:unadj_p ranksum:adj_p ; #delimit cr matrix rownames res = `rowname' matlist res, underscore format(%8.0g) *------------------ end example --------------------- (For more on how to use examples I sent to the Statalist, see http://home.fsw.vu.nl/m.buis/stata/exampleFAQ.html ) > Last question: to perform a paired t-test or signed rank sum test in > STATA, I am forced to reshape the dataset in wide format? Yes Hope this helps, Maarten ----------------------------------------- Maarten L. Buis Department of Social Research Methodology Vrije Universiteit Amsterdam Boelelaan 1081 1081 HV Amsterdam The Netherlands visiting address: Buitenveldertselaan 3 (Metropolitan), room Z434 +31 20 5986715 http://home.fsw.vu.nl/m.buis/ ----------------------------------------- ___________________________________________________________ Want ideas for reducing your carbon footprint? Visit Yahoo! For Good http://uk.promotions.yahoo.com/forgood/environment.html * * 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/

**References**:**st: cycling paired t test (and signed rank sum test)***From:*Diego Bellavia <messadua@yahoo.it>

- Prev by Date:
**Re: st: Why option "robust" and "cluster" doesn't work?** - Next by Date:
**st: ? Bug: Stata 10 crashes when ctrl+9 pressed twice** - Previous by thread:
**st: cycling paired t test (and signed rank sum test)** - Next by thread:
**Re: st: cycling paired t test (and signed rank sum test)** - Index(es):

© Copyright 1996–2016 StataCorp LP | Terms of use | Privacy | Contact us | What's new | Site index |