[R] Date Not Staying in Date Format
Gabor Grothendieck
ggrothendieck at gmail.com
Tue Jan 31 03:01:41 CET 2006
Using this test data, say:
dd <- Sys.Date() + 0:9
fac <- gl(5,2)
Try this:
do.call("c", tapply(dd, fac, max, simplify = FALSE))
or if a list result is ok then just
tapply(dd, fac, max, simplify = FALSE)
Another possibility using the as.Date.numeric method in the zoo
package is:
library(zoo)
as.Date(tapply(dd, fac, max))
For more info on the internal representation of "Date" class objects see
the Help desk article in R News 4/1.
On 1/30/06, David Randel <davidr00 at hotmail.com> wrote:
> I have a column in a data frame that has a class of "Date" and a mode of
> "numeric". When I:
>
> max(df$Date)
>
> My output stays in Date format, i.e. "2006-01-03".
>
> However, when I run the following statment:
>
> tapply(df$Date, df$SomeFactor, max)
>
> my output looks like this: 9129 9493 9861 10226 10591 10956 11320
> 11687 12052 12417
>
> The returned object is of mode "numeric" and class "array". Each array
> element is of mode "numeric" and class "numeric". I believe that this is
> the integer representation of my date. I can't seem to convert it back to a
> date.
>
> How do I get these to be intrepreted as a date instead of a number?
>
> Thanks,
> ~Dave R.
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>
More information about the R-help
mailing list