[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

From |
"Martin Weiss" <martin.weiss1@gmx.de> |

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

Subject |
Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating |

Date |
Sat, 13 Jun 2009 19:11:33 +0200 |

<>

Also, I simply added additional clusters to the -input- statement...

********** clear* input byte(i y x z n) 1 5 8 3 1 1 9 10 5 2 1 8 12 6 3 1 6 9 4 4 2 5 7 2 1 2 9 13 4 2 2 8 8 7 3 2 6 8 6 4 2 8 8 7 5 2 8 8 7 6 3 5 7 2 1 3 9 11 7 2 3 8 11 5 3 4 3 2 6 1 4 2 1 9 2 4 8 2 8 3 4 5 2 1 4 5 4 2 5 1 5 2 3 1 2 5 9 6 4 3 end capt prog drop sim /* Define the program */ prog sim vers 10.1 preserve gen random=runiform() sort i random by i: gen byte group=/* */cond(_n<=_N/2,1,2) drop random collapse (mean) y x z, /* */by(i group) /* get replacement as requested by John */ by i: replace y = y[1] by i: drop if _n==1 reg y x z restore end /* simulate */ simulate _b _se, reps(20)/* */ seed (123) : sim /* get t statistics and p values */ foreach v in x z { gen t_`v' = /* */_b_`v'/_se_`v' gen p_`v' =/* */ 2*(1-normal(abs(t_`v'))) } ********** HTH Martin _______________________

To: <statalist@hsphsun2.harvard.edu> Sent: Saturday, June 13, 2009 6:55 PM

<>And here is how you would -simulate- the thing. With 3 observations and 2slopes plus constant, this model is not well identified, to put it mildly,so the standard errors are lacking and the last lines cannot work... John,how do you intend to remedy the situation?********** clear* input byte(i y x z n) 1 5 8 3 1 1 9 10 5 2 1 8 12 6 3 1 6 9 4 4 2 5 7 2 1 2 9 13 4 2 2 8 8 7 3 2 6 8 6 4 2 8 8 7 5 2 8 8 7 6 3 5 7 2 1 3 9 11 7 2 3 8 11 5 3 end capt prog drop sim /* Define the program */ prog sim vers 10.1 preserve gen random=runiform() sort i random by i: gen byte group=/* */cond(_n<=_N/2,1,2) drop random collapse (mean) y x z, /* */by(i group) /* get replacement as requested by John */ by i: replace y = y[1] by i: drop if _n==1 reg y x z restore end /* simulate */ simulate, reps(20)/* */ seed (123) : sim /* get t statistics and p values */ foreach v in x z { gen t_`v' = /* */_b_`v'/_se_`v' gen p_`v' =/* */ 2*(1-normal(abs(t_`v'))) } ********** HTH Martin _______________________----- Original Message -----From: "John Antonakis" <john.antonakis@unil.ch>To: <statalist@hsphsun2.harvard.edu> Sent: Saturday, June 13, 2009 6:24 PMSubject: Re: st: Re: Randomly selecting variables in panel, collapsing,and simulatingHi Martin:Thanks for the reply and the code! You are so helpful with everyone andalways seem to be able to find an elegant solution! As an aside, what isa nice resource to learn how to program nicely in Stata?I made a mistake in the 3), which you noticed.So, this was 2)--(I am only putting one space after each entry so thatthe formatting doesn't get too messed up):i g y x z 1 1 6.5 10 4.5 1 2 7.5 9.5 4.5 2 1 7.3 9.3 4.3 2 2 7.3 8 6.7 3 1 5 7 2 3 2 8.5 11 6Now for 3), I want to put the data in such as way as to be able toregress the y of the first observation in each cluster on the x and z ofthe second observation in each clusteri y x z 1 6.5 9.5 4.5 2 7.3 8 6.7 3 5 11 6 Thank you very much for your help. Best, J. ____________________________________________________ Prof. John Antonakis Associate Dean Faculty of Business and Economics University of Lausanne Internef #618 CH-1015 Lausanne-Dorigny Switzerland Tel ++41 (0)21 692-3438 Fax ++41 (0)21 692-3305 Faculty page: http://www.hec.unil.ch/people/jantonakis&cl=en Personal page: http://www.hec.unil.ch/jantonakis ____________________________________________________ On 13.06.2009 18:06, Martin Weiss wrote:<>Here is the code for 1) and 2). I do not understand the intent in number3: If you really do want the first obs on y in each cluster, why doesyour example say "7.5" then? Should it not be 6.5?********** clear* input i y x z n 1 5 8 3 1 1 9 10 5 2 1 8 12 6 3 1 6 9 4 4 2 5 7 2 1 2 9 13 4 2 2 8 8 7 3 2 6 8 6 4 2 8 8 7 5 2 8 8 7 6 3 5 7 2 1 3 9 11 7 2 3 8 11 5 3 end compress list, noobs /* get groups */ gen random=runiform() sort i random by i: gen byte group=/* */cond(_n<=_N/2,1,2) l, noo sepby(i) drop random collapse (mean) y x z, /* */by(i group) l, noo sepby(i) ********** HTH Martin _______________________----- Original Message ----- From: "John Antonakis"<john.antonakis@unil.ch>To: <statalist@hsphsun2.harvard.edu> Sent: Saturday, June 13, 2009 3:19 PMSubject: st: Randomly selecting variables in panel, collapsing, andsimulatingHi:I want to do something that is quite straightforward, but don't yethave the programming skills to do this, so I would appreciate somehelp. Basically, I want to select randomly within clusters, thencollapse, then estimate a regression model that I would like tosimulate. I would like to define it as an e-class program so that Ican easily incorporate a simulation in there.I have the following data structure (I have added a line in-betweenclusters to facilitate viewing):i y x z n 1 5 8 3 1 1 9 10 5 2 1 8 12 6 3 1 6 9 4 4 2 5 7 2 1 2 9 13 4 2 2 8 8 7 3 2 6 8 6 4 2 8 8 7 5 2 8 8 7 6 3 5 7 2 1 3 9 11 7 2 3 8 11 5 3Where y is the dependent variable, and x and z are covariates (note, Ihave more covariates, so I would like to use something general thatworks even with more covariates), "i" is the panel identifier and "n"is number of observations in each cluster. Note that each cluster doesnot have the same number of observationsI would like to do the following:1) by cluster (i.e., within in each cluster), randomly split theobservations into two groups, with an equal amount of observations (ifnumber of observations are even); if the number of observations areodd, then one of the group will have 1 more observation than the other.Thus, I would now have this:i y x z n g 1 8 12 6 3 1 1 5 8 3 1 1 1 6 9 4 4 2 1 9 10 5 2 2 2 9 13 4 2 1 2 5 7 2 1 1 2 8 8 7 3 1 2 8 8 7 5 2 2 6 8 6 4 2 2 8 8 7 6 2 3 5 7 2 1 1 3 8 11 5 3 2 3 9 11 7 2 2 2) collapse observations at the group level for each cluster to get: i g y x z 1 1 6.5 10 4.5 1 2 7.5 9.5 4.5 2 1 7.3 9.3 4.3 2 2 7.3 8 6.7 3 1 5 7 2 3 2 8.5 11 63) then I want to the data as below, so that I can regress the y of thefirst observation in each cluster to the x and z of the secondobservation in each clusteri y x z 1 7.5 9.5 4.5 2 7.3 8 6.7 3 8.5 11 2 4) once I have this I want to simulate it, using something like this: capture program drop sim version 10.1 program define sim, eclass [here is the code I would like to insert to make points 1-4 above run] simulate _b _se, reps(20) seed (123) : sim, foreach v in x z { gen t_`v' = _b_`v'/_se_`v' gen p_`v' = 2*(1-normal(abs(t_`v'))) Thank you. John. -- ____________________________________________________ Prof. John Antonakis Associate Dean Faculty of Business and Economics University of Lausanne Internef #618 CH-1015 Lausanne-Dorigny Switzerland Tel ++41 (0)21 692-3438 Fax ++41 (0)21 692-3305 Faculty page: http://www.hec.unil.ch/people/jantonakis&cl=en Personal page: http://www.hec.unil.ch/jantonakis ____________________________________________________ * * 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/

**Follow-Ups**:**Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating***From:*John Antonakis <john.antonakis@unil.ch>

**References**:**st: Randomly selecting variables in panel, collapsing, and simulating***From:*John Antonakis <john.antonakis@unil.ch>

**st: Re: Randomly selecting variables in panel, collapsing, and simulating***From:*"Martin Weiss" <martin.weiss1@gmx.de>

**Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating***From:*John Antonakis <john.antonakis@unil.ch>

**Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating***From:*"Martin Weiss" <martin.weiss1@gmx.de>

- Prev by Date:
**Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating** - Next by Date:
**Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating** - Previous by thread:
**Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating** - Next by thread:
**Re: st: Re: Randomly selecting variables in panel, collapsing, and simulating** - Index(es):

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