Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.

# Re: st: Need help converting values into factor variable

 From Michael Stewart To statalist@hsphsun2.harvard.edu Subject Re: st: Need help converting values into factor variable Date Sat, 1 Dec 2012 07:44:04 -0500

```Dear Nick ,
I apologize for the mistake and not positng the code .
I am trying to decipher the code written by you(sort, I am by no means
and stata expert )
Can you explain what this code is doing; especially the argument (
sum(year != year[_n-1] &
> inrange(year, 2009, 2012))
Thanks a lot Nick

On Sat, Dec 1, 2012 at 7:17 AM, Nick Cox <njcoxstata@gmail.com> wrote:
> This is not "Statlist"!
>
> You should show us your code that you tried to get an explanation of
> what you are getting wrong.
>
> bysort patient (year) : gen flag = sum(year != year[_n-1] &
> inrange(year, 2009, 2012))
> by patient : replace flag = flag[_N]
>
> Nick
>
> On Sat, Dec 1, 2012 at 11:55 AM, Michael Stewart
> <michaelstewartresearch@gmail.com> wrote:
>
>> I am having trouble converting  my values into factor variables and am
>> looking for help. My data looks as follows where "patientid" is pt
>> identification number and "year_elevated" is year in which a
>> particular lab value was elevated
>>
>>
>> patientid       year_elevated
>> 111             2009
>> 111             2009
>> 222             2009
>> 222             2011
>> 222             2012
>> 333             2009
>> 333             2012
>> 444             2011
>> 444             2012
>> 555             2009
>> 555             2010
>> 555             2011
>> 555             2012
>>
>> I want to create a factor variable (y  )with values 1= ,2 , 3 and 4
>> where  for each distinct patientid
>> y=1 if year_elevated  has anyone of ( 2009 or 2010 or 2011 or 2012)  values
>> y=2 if year_elevated  has  any two of ( 2009 , 2010 , 2011 ,  2012)  values
>> y=3 if year_elevated has  any three of ( 2009 , 2010 , 2011 ,  2012)  values
>> y=4 if year_elevated  has  all four of ( 2009 , 2010 , 2011 ,  2012) values
> *
> *   For searches and help try:
> *   http://www.stata.com/help.cgi?search
> *   http://www.stata.com/support/faqs/resources/statalist-faq/
> *   http://www.ats.ucla.edu/stat/stata/

--
Thank you ,
Yours Sincerely,
Mike.
*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/faqs/resources/statalist-faq/
*   http://www.ats.ucla.edu/stat/stata/
```