[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: Recode non-integers to positive integers

From   Frank Gallo <>
Subject   Re: st: Recode non-integers to positive integers
Date   Fri, 21 Aug 2009 22:33:10 -0400

Hi Jon,

Thank you very much for your input. However, the syntax generates new variable values greater than 28. The 28 unique values occur many times. What I would like to accomplish, for example, is that each time the value 2.87 occurs the new variable value would be 1, and so on for the other unique values. I apologize if I was not clear in my previous post. Thank you.


On Aug 21, 2009, at 9:25 PM, John Ataguba wrote:

Hi Frank,

There are many possible options.


egen newvar=rank(oldvar), unique

This should work. Note that the oldvar is the variable containing 2.87 to 6.04. The newvar is a new variable you may specify differently to the oldvar.

I hope this helps.


From: Frank Gallo <>
Sent: Friday, 21 August, 2009 18:15:45
Subject: st: Recode non-integers to positive integers

Hi All,

I have a variable that has 28 unique non-integer values, which range from 2.87 to 6.04. I would like to recode the values to positive integers from 1 to 28 respectively. Is there a simpler way instead of "recode old var (2.87=1)....(6.04=28), generate(new var)" to accomplish this? Thank you.


*   For searches and help try:

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