[R] histogram of dates

Marc Schwartz marc_schwartz at me.com
Fri Apr 22 19:49:38 CEST 2011


On Apr 22, 2011, at 12:31 PM, Terry Therneau wrote:

> I can't seem to get a histogram of dates:
> 
> tmt910% R --vanilla
> 
> R version 2.13.0 (2011-04-13)
> Copyright (C) 2011 The R Foundation for Statistical Computing
> ISBN 3-900051-07-0
> ...
>> temp <- as.Date(1:200, origin="1970/01/01")
>> range(temp)
> [1] "1970-01-02" "1970-07-20"
>> hist(temp)
> Error in .Internal(inherits(x, what, which)) : 'x' is missing
> 
>> traceback()
> 3: inherits(breaks, "Date")
> 2: hist.Date(temp)
> 1: hist(temp)
> 
> Existence of hist.Date implies that this is intended to work.
> The MASS version fails in a different way.
> 
>> library(MASS)
>> truehist(temp)
> Error in Ops.difftime(n, 2) : '%/%' not defined for "difftime" objects


Hi Terry,

Try this:

  temp <- as.Date(1:200, origin="1970/01/01")

  hist(temp, breaks = "months")


There is no default for the 'breaks' argument in hist.Date() and there does not appear to be a check for a missing value for this argument.

truehist() does not have a method for Date class objects, but you could do:

  truehist(as.numeric(temp))

or perhaps use cut.Date() on the vector and create the intervals/breakpoints that you wish to use.

HTH,

Marc Schwartz



More information about the R-help mailing list