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: RE: how to store the statistics calculated in a loop as a table?
From
Nick Cox <[email protected]>
To
"'[email protected]'" <[email protected]>
Subject
RE: st: RE: how to store the statistics calculated in a loop as a table?
Date
Wed, 7 Dec 2011 18:39:12 +0000
-collapse- in particular should mean that you do not need to loop at all.
You can calculate all the ratios of sums by a single -generate-.
collapse (sum) s_EI = EI_t (sum) s_BE = BE_t_1 if inrange(trade_date_yearformat, 1990, 2010), by(FF_group_rank_0 trade_date_yearformat)
gen mean_EI_BE = s_EI / s_BE
Nick
[email protected]
qing ye
hi, I have checked collapse and tabstat, still no ideas about how to
use it combined with a loop?
In the loop, everytime, I calculated one mean_EI_BE, how do I write
this one result into one cell of a table where the columns and rows of
the table reprsents different steps in a looping?
On 8 December 2011 02:08, qing ye <[email protected]> wrote:
> Thanks for the quick reply.
>
> I will check the help file for collapse and tabstat
>
> the group takes the value of 1-6, and the varible FF_group_rank_0
> takes values of 1-6 stating six groups, so I want to loop for each
> group, I guess I need to use forvalues rather than foreach?
On 8 December 2011 02:00, Nick Cox <[email protected]> wrote:
>> I'd look at -collapse- and/or -tabstat-.
>>
>> In any case, your loop
>>
>> foreach group of varlist FF_group_rank_0 {
>>
>> }
>>
>> will do nothing as `group' is never referred to inside the loop. That probably doesn't matter, but it shows some confusion about what -foreach- does.
qing ye
>> Do any of you know how to report the results calculated after the loop
>> as tables??
>>
>> forvalues i=1990 (1)2010 {
>> foreach group of varlist FF_group_rank_0 {
>> forvalues n=1(1)6{
>>
>>
>> quietly sum EI_t if
>> trade_date_yearformat==`i' &FF_group_rank_0==`n'
>> local s_EI=r(sum)
>> quietly sum BE_t_1 if
>> trade_date_yearformat==`i' &FF_group_rank_0==`n'
>> local s_BE=r(sum)
>> local mean_EI_BE=`s_EI'/`s_BE'
>>
>>
>> }
>> }
>> }
>>
>> I wanted to have the mean_EI_BE I calculated in the loops reported as a table
>>
>> something like the following:
>>
>> year group1 group2 group3 group4 group5 group6
>>
>> 1990 x x x
>> 1991 x x x
>> 1992 x x x
>> 1993 x x x
>> ....
>>
>>
>>
>> How do I do this? Do I need to use matrix commends to save the
>> mean_EI_BE I calculated each time or do I need to generate some
>> variables before the loop and store the mean_EI_BE in those variables?
*
* 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/