Thanks, this works well.
-Shawn
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Eric G. Wruck
Sent: Wednesday, May 11, 2005 3:04 PM
To: [email protected]
Subject: Re: st: data loop question
Ok, here's a way of doing it: I made up a little example & wrote some
code. This looks like it'll work:
. l
+--------------+
| x1 x2 x3 |
|--------------|
1. | 1 2 3 |
2. | 7 5 4 |
3. | 10 34 18 |
4. | 16 12 16 |
+--------------+
. gen maxX = 0
.
. egen max = rowmax(x*)
.
. forvalues i = 1(1)3 {
2. replace maxX = `i' if x`i' == max
3. }
(2 real changes made)
(1 real change made)
(2 real changes made)
.
. l
+---------------------------+
| x1 x2 x3 maxX max |
|---------------------------|
1. | 1 2 3 3 3 |
2. | 7 5 4 1 7 |
3. | 10 34 18 2 34 |
4. | 16 12 16 3 16 |
+---------------------------+
.
.
However, you need to watch out for at least two things: (1) ties & (2)
missing values. The code I wrote takes the last maximum tie as the
variable of interest -- that is, in observation 4, x3 is determined to
hold the max even though x1 holds the same value. Missing values are
effectively treated as positive infinity, so you may have to control for
that separately -- this depends in part on what egen does with missing
values.
Hope this helps,
Eric
>Statalist,
>
>I have a series of variables, say x1-x10, and I would like to determine
>the numeric suffix associated with the variable that has the maximum
>value for each case. For example, maybe x9 has the max for case 1 and
>x7 has the max for case 2, then I would like to end up with a variable,
>say MaxX, that has a 9 and 7 for the first two cases respectively. I
>think a data loop is the way to go, but I've tried working out a loop
to
>do this and it's not coming to me.
>
>
>Thanks,
>Shawn
--
===================================================
Eric G. Wruck
Econalytics
2535 Sherwood Road
Columbus, OH 43209
ph: 614.231.5034
cell: 614.330.8846
eFax: 614.573.6639
eMail: [email protected]
website: http://www.econalytics.com
====================================================
*
* 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/
*
* 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/