Bookmark and Share

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: -foreach- loop to fit regression at each level of a variable


From   Sergiy Radyakin <[email protected]>
To   "[email protected]" <[email protected]>
Subject   Re: st: -foreach- loop to fit regression at each level of a variable
Date   Tue, 19 Nov 2013 14:49:53 -0500

There are many ways to get to the same result. one convenience with
the loop written explicitly is that it is easier for a beginner to add
new things into the loop's body, for example, to save results to
matrices, or dump to a file, and many other tasks. Many Stata commands
support -by- prefix/suffixes, which can be used to avoid explicit
looping, at the expense of more constraints at the command.
Best,Sergiy Radyakin

On Tue, Nov 19, 2013 at 2:40 PM, Nick Winter <[email protected]> wrote:
> isn't this what the -by:- prefix does:
>
> by sample_level, sort: logistic ...
>
>
> - Nick Winter
>
>
>
> On 11/19/2013 11:11 AM, Sergiy Radyakin wrote:
>>
>> Milena, is this something you are after?
>>
>> set seed 123
>> clear
>> set obs 740
>> generate sample_level=floor(runiform()*4)
>> generate outcome=runiform()*4200>2000
>> generate var1=runiform()
>> generate var2=runiform()
>> generate var3=runiform()
>> generate id=floor(runiform()*2)
>>
>> levelsof sample_level, local(levs)
>>
>> foreach n in `levs' {
>>    display ""
>>    display "======== Regression for level: `n'
>> ===================================="
>>    logistic outcome var1 var2 var3 if sample_level==`n', vce(cluster id)
>> }
>>
>> Best, Sergiy
>>
>> On Tue, Nov 19, 2013 at 7:34 AM, Milena Przheska
>> <[email protected]> wrote:
>>>
>>> Dear Statalist members,
>>>
>>> I am trying to fit the same logistic regression model using different
>>> samples from a data set and I am wondering if it is even possible to
>>> use a -foreach- loop to estimate regression models for each sample
>>> (indicated by a variable).
>>>
>>> I use the variable 'sample' to indicate the sample, but instead of
>>> writing the command over and over for each sample, I tried to do this
>>> with a -foreach- loop, something  like this:
>>>
>>> egen local sample_level = levelsof(sample)
>>>
>>> foreach n of sample_level {
>>> logistic outcome var1 var2 var3 if sample_level==`n', vce(cluster id)
>>> }
>>>
>>> As always, I would appreciate your help.
>>>
>>> Thanks,
>>> Milena
>>> *
>>> *   For searches and help try:
>>> *   http://www.stata.com/help.cgi?search
>>> *   http://www.stata.com/support/faqs/resources/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/faqs/resources/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/faqs/resources/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/faqs/resources/statalist-faq/
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index