Message-ID: <1114461173.13519.95.camel@horizons.localdomain>
Date: 2005-04-25T20:32:53Z
From: Marc Schwartz
Subject: How to transform the date format as "20050425"
In-Reply-To: <Pine.LNX.4.61.0504251510560.3163@aitken.uchicago.edu>
On Mon, 2005-04-25 at 15:18 -0500, Yong Wang wrote:
> Dear R user,
> if the dates are in format as "20050425" i.e., Apr. 25 2004"
> can you suggest an easy way to transfom it to standard form
> as "2005-04-25" or "2004Apr25" or "2005/04/25" or any other
> format which is R recognizable?
> if there is no easy way to do that, can you let me know what
> is the function in R performing similiar function as the "string"
> function in C or some other more basic language, so I can loop
> through all dates to make the desired change.
> thank you
> regards
If you are just formatting the Date (ie. no time component) then look
at ?as.Date, which has a format argument:
> as.Date("20050425", "%Y%M%d")
[1] "2005-04-25"
Using the format argument, you then return a standard Date class object
for use in R. The format argument varies as required for your data
format.
On the output side, there is the format() function, which has a method
for Dates, that you can then use to convert the Date class object into a
character vector:
> MyDate <- as.Date("20050425", "%Y%M%d")
> MyDate
[1] "2005-04-25"
> format(MyDate, "%B %d %Y")
[1] "April 25 2005"
Also see ?strftime for details on date format strings.
HTH,
Marc Schwartz