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

From |
"Michael Blasnik" <michael.blasnik@verizon.net> |

To |
<statalist@hsphsun2.harvard.edu> |

Subject |
st: Re: sampling question |

Date |
Wed, 10 Mar 2004 14:38:17 -0500 |

You will probably be best off using a loop and a postfile. I've done this kind of thing farily often, here's an ado that should work: program define prob1 version 8.2 syntax using , saving(str) [reps(integer 100) samples(integer 30) samplen(integer 100)] tempname post local tokeep=`samples'*`samplen' postfile `post' b1 b2 using `saving' set seed 1234567 forval rep=1(1)`reps' { use `using', replace gen rand=uniform() sort rand qui keep in 1/`tokeep' gen int sample=int((_n-1)/`samplen')+1 collapse y x1 x2 , by(sample) qui reg y x1 x2 local beta1=_b[x1] local beta2=_b[x2] post `post' (`beta1') (`beta2') } postclose `post' use `saving', replace end This ado is hardcoded for y x1 and x2 as the variables, but allows you to specify the number of overall replications, the subsample sizes and number of subsamples for each run. It also specifies a seed to provide repeatability. You could use it like this: prob1 using mydata, saving(myresults) Michael Blasnik michael.blasnik@verizon.net ----- Original Message ----- From: "ACHINTYA RAY" <achintyar@hotmail.com> To: <statalist@hsphsun2.harvard.edu> Sent: Wednesday, March 10, 2004 1:58 PM Subject: st: sampling question > Sorry for posting a somewhat long query. I'll appreciate if you can help me > perform the following operation is Stata. Bootstrap commands in Stata helps > me perform some of the things. Specifically, I am looking for a solution > where (sort of) bootsrap is allowed within a bootstrap setup. > > Suppose I have a sample of 20,000. I have 3 variables: y, x1 and x2. > Step 1: Draw 30 samples of size 100 each. > Step 2: Calculate mu(y), mu(x1), mu(x2) for each of the subsamples. > Step 3: Create a matrix of mu(y), mu(x1), mu(x2). Clearly, it will be a > matrix of dimension 30x3. Let's call it [Y X1 X2] > Step 4: Run the model Y=a + b1*X1 + b2*X2 + e > Step 5: Create file to save estimated b1 and b2. > Step 6: Repeat Steps 1 through 5 several times (100 times) to obtain a > matrix of estimated b1 and b2s (100x2 in dimension). > > While I can create a grand file of all the means, I am having difficulty in > creating the subroutine described in Steps 1 through 5. > > Thanks > > Achintya Ray > Senior Research Associate > Department of Medicine > Vanderbilt University > achintya.ray@vanderbilt.edu > > * > * 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/ * * 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: RE: Pooled OLS vs FE***From:*"Nick Cox" <n.j.cox@durham.ac.uk>

**st: sampling question***From:*"ACHINTYA RAY" <achintyar@hotmail.com>

- Prev by Date:
**Re: st: GLM with a Log link** - Next by Date:
**st: Re: dropping cases in hetgrot** - Previous by thread:
**st: sampling question** - Next by thread:
**RE: st: Problems with downloading the collinearity program** - Index(es):

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