Martin,
This is the code you sent me for discrete variables:
***
sysuse auto, clear
estpost tab rep for, chi2
esttab ., main(b) aux(colpct) /*
*/ nostar unstack noobs nonum nonote /*
*/ sca("chi2 Chi2 Value" "p corr. p-value") /*
*/ sfmt(%4.3fc) wide compress
***
It works for just one variable. However, how do I loop over several
variables? I used tab2, firstonly but it seems estpost doesn't
recognize it.
I also tried to adapt the program for continuous variables but this
time when the stratifying variable is categorical with several levels
(3,4, 5 levels). I tried to use oneway, but it did not store the
p-value.
How should I get it? Also, can I reuse the same program, when using
stratifying variables with diferent levels? Or it must be created
tailored for the same number of levels? For instances a program for 3
levels, another for 4 levels and so on.
Best wishes,
Eduardo
2009/10/5 Martin Weiss <[email protected]>:
>
> <>
>
>
> Add the -detail- option to your -summarize-s! You are asking for stuff that
> Stata only releases upon request :-)
>
>
>
> HTH
> Martin
>
>
> -----Ursprüngliche Nachricht-----
> Von: [email protected]
> [mailto:[email protected]] Im Auftrag von Eduardo Nunez
> Gesendet: Montag, 5. Oktober 2009 17:10
> An: [email protected]
> Betreff: Re: st: AW: Formatting tables with estpost & esttab
>
> Hi Martin,
>
> Stata/MP 11.0 for Windows (64-bit x86-64)
> Born 26 Aug 2009
> Copyright (C) 1985-2009
>
> Total physical memory: 4191812 KB
> Available physical memory: 2227852 KB
>
> Single-user 2-core Stata perpetual license:
> Serial number: XXXXXXXXXXXX
> Licensed to: Eduardo Nunez
> Personal license
>
>
> I tried to adapt the code for means-SD and ttest to medians IQR and
> median unsuscefully. Below is the code. I get the p-value for each
> variable but not the descriptive statistics.
> What am i doing wrong?
>
> Here is the code:
>
> **********************
> use "C:\Users\Eduardo\Desktop\HF dataset - August 24,
> 2009\Longitudinal_lymphocyte_analysis.dta", clear
> tempname hdle
> capt erase info.dta
> postfile `hdle' str10 var Median_0 IQR25_0 IQR75_0 /*
> */ Median_1 IQR25_1 IQR75_1 pval Overallmedian OverallIQR25 OverallIQR75 /*
> */ using info
>
> foreach var of varlist los edad_b fc_ingreso tas_ingreso tad hb leucos
> neutrofilos linfocitos monocitos cr acurico colesterol ldl hdl tga na{
> sum `var' if !sexo
> loc Median_0=r(p50)
> loc IQR25_0=r(p25)
> loc IQR75_0=r(p75)
> sum `var' if sexo
> loc Median_1=r(p50)
> loc IQR25_1=r(p25)
> loc IQR75_1=r(p75)
> median `var', by(sexo) exact
> local pval=r(p_exact)
> sum `var'
> post `hdle' ("`var'") (`Median_0') (`IQR25_0') (`IQR75_0') /*
> */ (`Median_1') (`IQR25_1') (`IQR75_1') (`pval') /*
> */ (r(p50)) (r(p25)) (r(p75))
> }
>
> postclose `hdle'
>
> use info, clear
> l, abbrev(12) noobs sep(0)
> *********************************************************
> Thisw is the result I got:
> +---------------------------------------------------------------------------
> -------------------------------------------------------+
> | var Median_0 IQR25_0 IQR75_0 Median_1 IQR25_1
> IQR75_1 pval Overallmed~n OverallIQR25 OverallIQR75 |
>
> |---------------------------------------------------------------------------
> -------------------------------------------------------|
> | los . . . . .
> . .4098835 . . . |
> | edad_b . . . . .
> . .0000138 . . . |
> | fc_ingreso . . . . .
> . .6778672 . . . |
> | tas_ingres . . . . .
> . .000103 . . . |
> | tad . . . . .
> . .4437288 . . . |
> | hb . . . . .
> . 7.24e-11 . . . |
> | leucos . . . . .
> . .0460077 . . . |
> | neutrofilo . . . . .
> . .00087 . . . |
> | linfocitos . . . . .
> . .833713 . . . |
> | monocitos . . . . .
> . 1.11e-06 . . . |
> | cr . . . . .
> . 1.36e-08 . . . |
> | acurico . . . . .
> . .0039871 . . . |
> | colesterol . . . . .
> . 7.56e-08 . . . |
> | ldl . . . . .
> . .0002156 . . . |
> | hdl . . . . .
> . .0047893 . . . |
> | tga . . . . .
> . 1.35e-09 . . . |
> | na . . . . .
> . .6747179 . . . |
>
> +---------------------------------------------------------------------------
> -------------------------------------------------------+
>
>
> One more thing...
> The code you sent me for discrete variables:
> ***
> sysuse auto, clear
>
> estpost tab rep for, chi2
> esttab ., main(b) aux(colpct) /*
> */ nostar unstack noobs nonum nonote /*
> */ sca("chi2 Chi2 Value" "p corr. p-value") /*
> */ sfmt(%4.3fc) wide compress
>
> ***
> How do I loop over several variables? I used tab2, firstonly but it
> seems estpost doesn't recognize it.
>
>
>
> Note: In biomedical sciences these are the traditional way to express
> table 1 for the manuscript where you show how baseline characteristics
> are distributed over your exposure variable.
> I imagine a lot of statalister that work in biomedical science would
> take advantage of this automatic process to save time.
>
> I am very grateful of your help and excuse my ignorance in Stata programing.
>
> Best wishes,
>
> Eduardo
>
>
>
>
>
> 2009/10/5 Martin Weiss <[email protected]>:
>>
>> <>
>>
>> Not sure how you would get the upper panel into esttab, but you can sure
> get
>> it into a Stata file which you could export in any way you see fit...
>>
>>
>> *************
>> sysuse auto, clear
>>
>> tempname hdle
>>
>> capt erase info.dta
>>
>> postfile `hdle' str10 var dommean domsd /*
>> */ formean forsd pval overallmean overallsd /*
>> */ using info
>>
>>
>> foreach var of varlist price mpg{
>> sum `var' if !for
>> loc dommean=r(mean)
>> loc domsd=r(sd)
>> sum `var' if for
>> loc formean=r(mean)
>> loc forsd=r(sd)
>> ttest `var', by(foreign)
>> local pval=r(p)
>> sum `var'
>> post `hdle' ("`var'") (`dommean') (`domsd') /*
>> */ (`formean') (`forsd') (`pval') /*
>> */ (r(mean)) (r(sd))
>> }
>>
>> postclose `hdle'
>>
>> use info, clear
>> l, abbrev(12) noobs sep(0)
>> *************
>>
>>
>>
>> HTH
>> Martin
>>
>> -----Ursprüngliche Nachricht-----
>> Von: [email protected]
>> [mailto:[email protected]] Im Auftrag von Eduardo Nunez
>> Gesendet: Montag, 5. Oktober 2009 01:18
>> An: [email protected]
>> Betreff: Re: st: AW: Formatting tables with estpost & esttab
>>
>> Hi Martin,
>>
>> It did work pretty good for discrete variables. For continuous
>> variables, I would like a code that provide me side by side the
>> meanpuls-minusSD for the two categories of Foreign and a third column
>> with the p-value from ttest.
>>
>> Thank you so much in advance,
>>
>> Eduardo
>>
>>
>>
>> On Sun, Oct 4, 2009 at 5:36 PM, Martin Weiss <[email protected]> wrote:
>>>
>>> <>
>>>
>>>
>>>
>>> You can -estpost- all these results in a quite straightforward manner,
> and
>>> then -esttab- them with the matrix function of this command. For
>> instance,
>>> the lower panel of your table would be
>>>
>>> ***
>>> sysuse auto, clear
>>>
>>> estpost tab rep for, chi2
>>> esttab ., main(b) aux(colpct) /*
>>> */ nostar unstack noobs nonum nonote /*
>>> */ sca("chi2 Chi2 Value" "p corr. p-value") /*
>>> */ sfmt(%4.3fc) wide compress
>>>
>>> ***
>>>
>>>
>>>
>>> HTH
>>> Martin
>>>
>>>
>>> -----Ursprüngliche Nachricht-----
>>> Von: [email protected]
>>> [mailto:[email protected]] Im Auftrag von Eduardo
> Nunez
>>> Gesendet: Sonntag, 4. Oktober 2009 22:33
>>> An: [email protected]
>>> Betreff: st: Formatting tables with estpost & esttab
>>>
>>> Dear statalister,
>>>
>>> I have been trying to get the right code in estpost and esttab
>>> (without success) to format tables as the example below (using auto
>>> dataset):
>>>
>>> Domestic (N=52) Foreign (N=22)
>>> P-value Total (N=74)
>>>
>>> Price 6179.3ą3189.0 6070.1ą2221.0
>>> 0.015 6146.0ą2912.4
>>>
>>> Mileage (mpg) 19.54ą4.753 25.29ą6.310
>>> 0.006 21.29ą5.866
>>>
>>> Repair Record 1978, n(%)
>>> *0.000
>>> 1 2 (4.17)
>>> 0 (0)
>>> 2 (2.9)
>>> 2 8 (16.67)
>>> 0 (0)
>>> 8 (11.59)
>>> 3 27 (56.25)
>>> 3 (14.29) 30 (43.48)
>>> 4 9 (18.75)
>>> 9 (42.86) 18 (26.09)
>>> 5 2 (4.17)
>>> 9 (42.86) 11 (15.94)
>>>
>>> *Omnibus P-value
>>>
>>>
>>>
>>>
>>> The meanąSD [or median (IQR) when appropriate] for each variable and
>>> for the total population with the p-value corresponding (either a
>>> t-test or ranksum test);
>>> For discrete variables, the n (%)...count(col percentage) and the
>>> p-value corresponding to chi2.
>>>
>>> I would really appreciate any help on this issue.
>>>
>>> Best wishes,
>>>
>>> Eduardo
>>>
>>> *
>>> * For searches and help try:
>>> * http://www.stata.com/help.cgi?search
>>> * http://www.stata.com/support/statalist/faq
>>> * http://www.ats.ucla.edu/stat/stata/
>>>
>>>
>>> *
>>> * For searches and help try:
>>> * http://www.stata.com/help.cgi?search
>>> * http://www.stata.com/support/statalist/faq
>>> * http://www.ats.ucla.edu/stat/stata/
>>>
>>
>> *
>> * For searches and help try:
>> * http://www.stata.com/help.cgi?search
>> * http://www.stata.com/support/statalist/faq
>> * http://www.ats.ucla.edu/stat/stata/
>>
>>
>> *
>> * For searches and help try:
>> * http://www.stata.com/help.cgi?search
>> * http://www.stata.com/support/statalist/faq
>> * http://www.ats.ucla.edu/stat/stata/
>>
>
> *
> * For searches and help try:
> * http://www.stata.com/help.cgi?search
> * http://www.stata.com/support/statalist/faq
> * http://www.ats.ucla.edu/stat/stata/
>
>
> *
> * For searches and help try:
> * http://www.stata.com/help.cgi?search
> * http://www.stata.com/support/statalist/faq
> * http://www.ats.ucla.edu/stat/stata/
>
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/