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

From |
Cameron Hooper <chooper@umich.edu> |

To |
statalist@hsphsun2.harvard.edu |

Subject |
st: Programming question |

Date |
Fri, 04 Mar 2005 12:00:45 -0500 |

A novice programming question. Say I have the following data

id x

1 1

1 2

1 4

2 2

2 8

2 6

2 2

I want to write a program to loop through each company (represented by id) and then within each company loop through each observation. Something like:

forvalues i = 1(1)<number of companies> {

for values j = 1(1)<number of observations for company `i'> {

<do stuff>

}

}

To find the number of companies in the sample I've used:

tempvar numco

egen `numco '= max(id)

local nc = `numco'[1]

This is cumbersome, but it (seems) to work. I have not been able to find the <number of observations for company `i'>. I've tried things like

tempvar nobs

by id, sort: generate `nobs' = _N

Placed outside the loop this gets me part of the way there, but I don't know how to use this information to control the inner loop. I'm sure I'm missing something obvious. Thanks.

Cameron

*

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

**Follow-Ups**:**Re: st: Programming question***From:*David Kantor <dkantor@jhu.edu>

**Re: st: Programming question***From:*David Kantor <dkantor@jhu.edu>

- Prev by Date:
**Re: st: RE: table of counts of values for N variables** - Next by Date:
**st: Interpreting fixed effects estimates in STATA** - Previous by thread:
**st: RE: table of counts of values for N variables** - Next by thread:
**Re: st: Programming question** - Index(es):

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