Bastian,
there is an faq on this: "How do I create variables summarizing for
each individual properties of the other members of a group? " which
you can find here: http://www.stata.com/support/faqs/data/members.html
.
Your problem is similar to item 5: Specific problem: maximum age of
the other children, but not exactly the same.
This is how it could work:
bysort siccode year: gen id = _n
sum id
gen median = .
forvalues x = 1/`r(max)' {
generate newsales = sales if id != `x'
egen work = median(newsales), by(sic-code year)
replace median = work if id == `x'
drop work newsales
}
Means are easier to calculate; it's explained in the faq.
Eva
2008/9/27 Bastian Steingros <[email protected]>:
> Dear Stata users,
>
> I am searching a function in stata to program peer groups.
> In my benchmarking study about American industries I want to compare companies by its sales, earnings etc.
> I use the three digit industry code to classify the industries (sic-codes). The peer group must be within the same industry.
> Here, the purpose is to compute the mean or median of the sales and to see if the respective firm's performance is below or above the mean or the median.
>
> But, the peer group of firm X contains all the companies with the same digit code but *not* firm X (otherwise I would compare X with itself)
>
> To conclude:
>
> year sic-code firm sales mean median
> 1990 333 X 10 ? ?
> 1990 333 Y 20 ? ?
> 1990 333 Z 30 ? ?
> ---------------------------------------------
> 1990 334 A 21 ? ?
> 1990 334 B 5 ? ?
> ---------------------------------------------
> 1991 etc. ...
>
> so, in 1990
> the peer group mean/median for X must contain (20+30) but not 10
> the peer group mean/median for Y must contain (10+30) but not 20
> the peer group mean/median for Z must contain (10+20) but not 30
> and so on...
>
> is there a way to program is stata something like
>
> by year sic-code, sort: egen median/mean *without the sales of the firm X / firm Y etc.*
>
> Please note, it is basically more important for me to obtain the *median* than the mean peer group due to the outlier problem of the mean function.
>
> So, please help me find a solution to the median peer group first.
>
> Many thanks in advance!
>
> Bastian
*
* 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/