[R] Vectors of years, months, and days to dates?
Daehyok Shin
sdhyok at email.unc.edu
Mon Jun 7 18:01:56 CEST 2004
How can I create POSIXlt directly from the numbers?
I failed to find the solution from help documents.
Daehyok
--On Monday, June 07, 2004 4:44 PM +0100 Prof Brian Ripley
<ripley at stats.ox.ac.uk> wrote:
> On Mon, 7 Jun 2004, Shin, Daehyok wrote:
>
>> The interface for dates in R is a little confusing to me.
>> I want to create a vector of Date objects from vectors of years, months,
>> and days.
>> One solution I found is:
>>
>> years <- c(1991, 1992)
>> months <- c(1, 10)
>> days <- c(1, 2)
>>
>> dates <- as.Date(ISOdate(years, months, days))
>>
>> But, in this solution the ISOdate function converts the vectors into
>> characters,
>> which can cause serious performance and memory loss
>> when the vectors of years, months, and days are huge.
>
> Really? You have measured the loss? A million causes no problem for
> example, and what are you going to do with a million dates that is
> instantaneous and worthwhile? And a million dates are hardly going to be
> unique so you only need to convert the unique values.
>
>> I am quite sure there is much better solution for it. What is it?
>
> Write your own C code, or make a POSIXlt object directly from the numbers
> and convert that.
>
> --
> Brian D. Ripley, ripley at stats.ox.ac.uk
> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
> University of Oxford, Tel: +44 1865 272861 (self)
> 1 South Parks Road, +44 1865 272866 (PA)
> Oxford OX1 3TG, UK Fax: +44 1865 272595
>
More information about the R-help
mailing list