Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.

# Re: st: using loops in collapse command

 From Nick Cox To statalist@hsphsun2.harvard.edu Subject Re: st: using loops in collapse command Date Mon, 2 Apr 2012 16:10:55 +0100

```The geometric mean is only usefully defined for strictly positive
values. If that is the case, then the solution at

http://www.stata.com/statalist/archive/2012-03/msg01142.html

is equivalent to this, requires no installed extras and is more direct.

Nick

On Mon, Apr 2, 2012 at 4:03 PM, Alberto Dorantes
<alberto.dorantes@finanzastec.net> wrote:
> Hi Michael.
> You can install the egenmore function first using findit egenmore.
>
> Then, you can type:
>
> egen gm=gmean(value1), by(id)
> egen nn=count(value1), by(id)
> gen prod=gm^(nn)
>
> I hope this help...
>
> Alberto.
>
> 2012/4/2 Jocelyn Michael <michaeljocelyn31@gmail.com>:
>> I am a new stata user and have been trying to write a loop to accomplish a task.
>>
>> My data looks like this:
>>
>>
>> id                 Year               Value 1
>> A               Jan1991             0.92
>> A               Feb1991             0.93
>> A               Mar1991             0.24
>> A               APr1991             0.83
>> ..
>> ..
>> B               Jan1991             0.67
>> B               Feb1991             0.45
>> ..
>>
>> What I am trying to achieve is to write a loop that multiplies value1
>> for each id and returns one number for each year - sort of like a
>> collapse command but instead of the sum, I want the product. That is
>> for A for 1991, (0.92*0.93*0.24*0.83).
>>

*
*   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/
```