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: getting Stata to read a bizarre sequence of dates
From
joales salbdralor <[email protected]>
To
[email protected]
Subject
Re: st: getting Stata to read a bizarre sequence of dates
Date
Wed, 13 Jun 2012 09:31:46 +0200
thanks Nick for your reply. you are right (as always) that Stata can
read these string dates and it is converting them to numeric dates.
The only problem that I have is how to avoid having the "with gaps"
comment, Put differently, how can I correct this problem?. Or is it ok
by just issuing the previously mentioned commands, that is:
gen edate1 = date(dates1, "DM20Y")
gen edate2 = floor(edate1/28)
tsset id edate2
Regarding your reasonable question why I am posting mysteriously
similar questions is that I want to play around with different and
"bizarre" sequence of dates as this is the first step if I want to
start doing correct data/econometric analysis .
thank you very much again
On 6/13/12, Nick Cox <[email protected]> wrote:
> You've posted numerous questions on this kind of data over the last
> few weeks, to which there have been numerous answers, so why you ask
> this question seems especially mysterious.
>
> First, Stata _is_ reading your string dates and it _is_ converting
> them to numeric dates. So the implication that Stata can't read these
> data is quite wrong.
>
> The only problem evident is that there is one gap in this dataset even
> when you restructure it as a series with spacing 28 days.
>
> So, what -tsset- reports is essentially "fair comment". There is a gap
> at 638 as the following reveals.
>
> . format edate1 %td
>
> . tab edate1
>
> edate1 | Freq. Percent Cum.
> ------------+-----------------------------------
> 23nov2008 | 2 14.29 14.29
> 28dec2008 | 2 14.29 28.57
> 25jan2009 | 2 14.29 42.86
> 22feb2009 | 2 14.29 57.14
> 29mar2009 | 2 14.29 71.43
> 26apr2009 | 2 14.29 85.71
> 24may2009 | 2 14.29 100.00
> ------------+-----------------------------------
> Total | 14 100.00
>
> . tab edate2
>
> edate2 | Freq. Percent Cum.
> ------------+-----------------------------------
> 637 | 2 14.29 14.29
> 639 | 2 14.29 28.57
> 640 | 2 14.29 42.86
> 641 | 2 14.29 57.14
> 642 | 2 14.29 71.43
> 643 | 2 14.29 85.71
> 644 | 2 14.29 100.00
> ------------+-----------------------------------
> Total | 14 100.00
>
> By the way, posting code that others can run is an excellent idea, but
> cut the -cd d:- which assumes that users have a d: drive, which may be
> quite wrong.
>
> Nick
>
> On Wed, Jun 13, 2012 at 12:37 AM, stef salvez <[email protected]>
> wrote:
>
>> I have the following panel data set
>>
>> clear all
>> cd d:\
>> input str8 (dates1) id
>> "23/11/08" 1
>> "28/12/08" 1
>> "25/01/09" 1
>> "22/02/09" 1
>> "29/03/09" 1
>> "26/04/09" 1
>> "24/05/09" 1
>> "23/11/08" 2
>> "28/12/08" 2
>> "25/01/09" 2
>> "22/02/09" 2
>> "29/03/09" 2
>> "26/04/09" 2
>> "24/05/09" 2
>>
>> end
>>
>> the difference (in days) between successive dates is 35 28 28 35 28 28
>>
>> The problem is that I do not know how to convert these string dates
>> into numeric variables given the fact that I have 2 jumps (35 days)
>> if i issue the commands
>>
>> gen edate1 = date(dates1, "DM20Y")
>> gen edate2 = floor(edate1/28)
>> tsset id edate2
>>
>> I get the following error message
>>
>> panel variable: id (strongly balanced)
>> time variable: edate2, 637 to 644, but with gaps
>> delta: 1 unit
>>
>> Is there any code that could fix that so as to get Stata to "read"
>> that "bizarre"sequence of dates?
>
> *
> * 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/