Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


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

Re: st: working with timestamps with milliseconds


From   David Souther <davidsoutheremail@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: working with timestamps with milliseconds
Date   Sun, 21 Feb 2010 18:58:25 -0600

Yes, I did miss the note about using double format to maintain
precision, thanks,  yet this still doesn't work in the second
observation of my example which uses milliseconds, using double
precision still gives:

clear
inp str30 time
"1-22-2007 3:44:22"
"1/23/2008 02:23:11.111"
end

gen double time2 = clock(time, "MDY hms")
format time2 %tc
li

     |                  time                time2 |
     |--------------------------------------------|
  1. |     1-22-2007 3:44:22   22jan2007 03:44:22 |
  2. | 1/23/2008 02:23:11.111   23jan2008 02:23:11


I lose the  milliseconds with timestamps. Is this still a precision
issue or is there something else I'm missing here?




On Sat, Feb 20, 2010 at 8:17 PM, Michael Mitchell
<Michael.Norman.Mitchell@gmail.com> wrote:
> Dear David
>
>  Ah, you have been bitten by the need to store date/time values as
> -double- precision variables. Otherwise, as you see, precision is
> lost. So, you would instead specify
>
> gen double time2 = clock(time, "MDY hms")
>
>  and that should work for you.
>
> Best regards,
>
> --
> Michael N. Mitchell
> See the Stata tidbit of the week at...
> http://www.MichaelNormanMitchell.com
> Visit me on Facebook at...
> http://www.facebook.com/MichaelNormanMitchell
>
> On Sat, Feb 20, 2010 at 5:29 PM, David Souther
> <davidsoutheremail@gmail.com> wrote:
>> I couldn't find a solution to this in the Statalist archives, and this
>> may be in the dates/times help file but I've read through it a couple
>> of time and cannot find (or probably don't understand this file enough
>> to find) the solution for how to work with milliseconds.
>> Every time I format a timestamp that includes the MDY along with
>> hours, minutes, seconds and milliseconds, the seconds/milliseconds are
>> off by a minute or so.  I did see the section on leap seconds, but I"m
>> not sure how that plays into my example and if there is a way to just
>> show and work with the exact timestamp that I input into Stata.
>> Here's what I do
>>
>> clear
>> inp str30 time
>> "1-22-2007 3:44:22"
>> "1/23/2008 02:23:11.11"
>> end
>>
>> gen time2 = clock(time, "MDY hms")
>> format time2 %tC
>>
>> gen d2 = clock("2/22/2002 14:22:33.232", "MDY hms")
>> format d2 %tc
>>
>>
>> This gives me --
>>
>>     +-----------------------------------------------------------------+
>>     |                  time                time2                   d2 |
>>     |-----------------------------------------------------------------|
>>  1. |     1-22-2007 3:44:22   22jan2007 03:43:35   22feb2002 14:23:02 |
>>  2. | 1/23/2008 02:23:11.11   23jan2008 02:23:17   22feb2002 14:23:02 |
>>     +-----------------------------------------------------------------+
>> Notice that the time changed in from things like 3:44:22  to 3:43:35.
>>
>> I tried using %tC as well.  I use Stata 11 on Windows.  Any hints?
>>
>> Thanks,
>>
>> David
>> *
>> *   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–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index