Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: st: Count the number of changing string values
From
Ching Wong <[email protected]>
To
[email protected]
Subject
Re: st: Count the number of changing string values
Date
Fri, 14 Jun 2013 20:42:27 +0930
Thanks Nick
Yes, it's all good if I only need to count the first "NO'.
But I would rather to see how to count the first "YES & NO" between
year of study.
id Drug2009 Drug 2000
1 Yes NO ------->ONE count
Regards,
Ching
On 14 June 2013 20:24, Nick Cox <[email protected]> wrote:
> I can't see your value labels from here. But suppose that "No" is a
> label for value 1.
>
> replace year = `j' if Drug`j' == 1 & missing(year)
>
> I trust that you will be able to modify that to your situation.
>
>
> Nick
> [email protected]
>
>
> On 14 June 2013 11:45, Ching Wong <[email protected]> wrote:
>> Hi Nick,
>>
>> So what if -drug*- are numeric variables with value labels, how should
>> I change my Command?
>>
>>
>> Thanks!
>>
>>
>> Ching
>>
>> On 14 June 2013 19:19, Nick Cox <[email protected]> wrote:
>>> Code that "doesn't work" but is not shown can not be commented on.
>>> Long structure (I prefer to avoid the word "format" here) is not
>>> essential for the problem as I understand it, but it is likely to be
>>> better for you for most analyses.
>>>
>>> The year in which people first said "No" is
>>>
>>> gen year = .
>>>
>>> qui forval j = 1999/2012 {
>>> replace year = `j' if Drug`j' == "No" & missing(year)
>>> }
>>>
>>> tab year
>>>
>>> So,
>>>
>>> 1. Everybody starts out with missing.
>>>
>>> 2. If they said "No" in 1999, -year- is changed to 1999
>>>
>>> 3. If they said "No" in 2000, -year- is changed to 2000, but only if
>>> -year- is missing (so values of 1999 are protected)
>>>
>>> and so on.
>>>
>>> You didn't explain your datatypes. If -drug*- are numeric variables
>>> with value labels, the syntax will differ accordingly.
>>>
>>> Nick
>>> [email protected]
>>>
>>>
>>> On 14 June 2013 10:20, Ching Wong <[email protected]> wrote:
>>>
>>>> I have the following data set:
>>>>
>>>> Id sex drug1999 drug2000 drug2001 drug 2001
>>>>
>>>> 1 F Yes No Yes Unknown
>>>>
>>>> 3 M No Yes Yes No
>>>>
>>>> 5 F Yes Yes Yes Yes
>>>>
>>>> 9 M Unknown Yes No Yes
>>>>
>>>> 10 F Yes No Yes No
>>>>
>>>> I would like to produce a count of to show the number of people who
>>>> quit each year, only count the first time they quit and do not care if
>>>> they change their status to ‘No’ again.
>>>>
>>>> What would be the command? I tried to change it to the long formal and
>>>> use the lag function, but it doesn’t work.
>>>
>>> *
>>> * 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/
>>
>> *
>> * 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/
>
> *
> * 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/
*
* 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/