Statalist


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

Re: RE: st: how to change specific string variable into date variable?


From   [email protected]
To   statalist<[email protected]>
Subject   Re: RE: st: how to change specific string variable into date variable?
Date   Thu, 13 Aug 2009 15:56:35 +0800

Martin,
what Nick cites is in the help for -dates_and_times-.


Best regards,
Rose.

----- Original Message -----
From: Martin Weiss <[email protected]>
To: <[email protected]>
Subject: RE: st: how to change specific string variable into date variable?
Date: 2009-8-13 04:48:58


<>

I thought about this solution, but failed to find the reference Nick
cites... Would it not make more sense to leave the second -substr()- free to
take a month consisting of one digit or two by replacing "2" with a dot?


HTH
Martin


-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Nick Cox
Sent: Mittwoch, 12. August 2009 22:25
To: [email protected]
Subject: Re: st: how to change specific string variable into date variable?

Martin Weiss suggested a solution which worked fine. Rose's problem was
left unexplained, however, yet the explanation is given directly in the
help for -dates_and_times-. 

For functions like -monthly()-, 

"The pair of numbers to be translated must be separated by space or
punctuation. No extra characters are allowed." 

As Rose's dates are run together, this condition is not satisfied. 

g date2=monthly(substr(date, 1, 4) + " " + substr(date, 5, 2),"YM")

would have been a direct solution. Where someone has seen fit to put
year and month together, we insert a space between them. 

Nick
[email protected] 

Rose <[email protected]> 

Something wrong happened when changing the string variable into date
variable.

clear
input country:mylabel /* 
*/ str10 date, auto 
Argentina "199001"
Argentina "199001"
Argentina "199001"
Argentina "199002"
Argentina "199003"
Argentina "199004"
Argentina "199004"
Argentina "199004"
Argentina "199004"
Argentina "199101"
Argentina "199101"
Argentina "200803"
Argentina "200804"
Argentina "200804"
Brazil "199001"
Brazil "199002"
Brazil "199002"
Brazil "199003"
Brazil "199003"
Brazil "199003"
Brazil "199003"
end
g date2=monthly(date,"YM")

The result showed "21 missing values generated"

Anything wrong? How to correct it ?

*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/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/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/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/



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