Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: st: increase digits after decimal point in p value
From
Austin Nichols <[email protected]>
To
[email protected]
Subject
Re: st: increase digits after decimal point in p value
Date
Tue, 12 Jul 2011 16:49:43 -0400
Elizabeth Allred <[email protected]>:
With that many, you probably want -capture- rather than quietly, and
you need to decide what to do with errors. Better to write out a file
with e.g. -post- that allows subsequent analysis, rather than looking
at reams of output. You might also want to analyze power...
set seed 1
mat c=(1,.1\ .1,1)
drawnorm y x, n(3600) clear corr(c)
replace y=y>0
replace x=x>0
tempname o
postfile `o' number pexact c11 c12 c21 c22 using pexact, replace
forv i=1/3500 {
cap ta y x in `i'/`=`i'+100', exact matcell(C)
if _rc==0 &rowsof(C)==2&colsof(C)==2 {
if r(p_exact)<.05/3500 {
mat li C
di "Fisher's exact p=" r(p_exact)
}
post `o' (`i' ) (`r(p_exact)') (`=C[1,1]') (`=C[1,2]') (`=C[2,1]') (`=C[2,2]')
}
}
postclose `o'
use pexact, clear
tw kdensity pexact
Under the null:
drawnorm y x, n(3600) clear seed(1)
replace y=y>0
replace x=x>0
tempname o
postfile `o' number pexact c11 c12 c21 c22 using pexact, replace
forv i=1/3500 {
cap ta y x in `i'/`=`i'+100', exact matcell(C)
if _rc==0 &rowsof(C)==2&colsof(C)==2 {
if r(p_exact)<.05/3500 {
mat li C
di "Fisher's exact p=" r(p_exact)
}
post `o' (`i' ) (`r(p_exact)') (`=C[1,1]') (`=C[1,2]') (`=C[2,1]') (`=C[2,2]')
}
}
postclose `o'
use pexact, clear
tw kdensity pexact
On Tue, Jul 12, 2011 at 3:37 PM, Elizabeth Allred
<[email protected]> wrote:
> Thanks Austin,
>
> For the table I showed, I get:
>
> scalars:
> r(N) = 861
> r(r) = 2
> r(c) = 2
> r(p_exact) = 4.79750510923e-07
> r(p1_exact) = 2.92991198169e-07
>
> I'm interested in the two sided p so I did:
>
> ret li p_exact
>
> scalar r(p_exact) = 4.79750510923e-07
>
> Unfortunately what I'm actually doing is around 3500 tables and I'd really like to scan the output and see:
>
> Fisher's exact = 0.00000
>
> so I can quickly pick out tables with p < .00001. I really do want to change the display format!
>
> Liz
>
> On 7/12/2011 at 3:14 PM, in message
> <CAGkAVYKJM9AKAmObHFpa7Y1TajS+655otdAsUGhRvKSr6T3_+Q@mail.gmail.com>, Austin
> Nichols <[email protected]> wrote:
>> Elizabeth Allred <[email protected]> :
>>
>> sysuse auto, clear
>> ta rep78 for, exact
>> ret li
>>
>>
>>
>> On Tue, Jul 12, 2011 at 3:08 PM, Elizabeth Allred
>> <[email protected]> wrote:
>>> I need to see 5 digits after the decimal point for the Fisher's exact test
>> in a tabulate request. It only shows digits.
>>>
>>> tab x y, exact
>>>
>>> y
>>> x | 0 1 | Total
>>> -----------+----------------------+----------
>>> 0 | 512 133 | 645
>>> 1 | 133 83 | 216
>>> -----------+----------------------+----------
>>> Total | 645 216 | 861
>>>
>>> Fisher's exact = 0.000
>>> 1-sided Fisher's exact = 0.000
>>>
>>> Tabulate is a "built-in" command so I can't go in and change the display
>> format.
>>>
>>> How can I get what I need??
*
* 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/