# Re: st: benchmarking + determine the peers

 From "Eva Poen" To Statalist Subject Re: st: benchmarking + determine the peers Date Sat, 27 Sep 2008 12:32:09 +0100

```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 <Steingros@gmx.de>:
> 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.
>
>