# [R] Problem with timeSequence {timeDate} - wrong end date

Joshua Wiley jwiley.psych at gmail.com
Thu Jan 6 15:47:43 CET 2011

```On Thu, Jan 6, 2011 at 5:27 AM, Joshua Wiley <jwiley.psych at gmail.com> wrote:
> timeSequence() ultimately is relying on seq.POSIXt().  If you look at

My apologies, I spoke nonsense---timeSequence() does NOT rely on
seq.POSIXt().  The timeDate package has its own method defined for
seq() which is what gets dispatched.  Still, the behavior is similar:

> timeSequence(from = "2010-01-15", to = "2010-02-01", by = "1 month")
GMT
[1] [2010-01-15] [2010-02-15]
>
> seq.POSIXt(from = as.POSIXct("2010-01-15"),
+   to = as.POSIXct("2010-02-01"), by = "1 month")
[1] "2010-01-15 PST" "2010-02-15 PST"

which is not surprising because the code is responsible for this
behavior is similar:

###### seq.timeDate* ######
else if (valid == 6) {
if (missing(to)) {
mon <- seq.int(r1\$mon, by = by, length.out = length.out)
}
else {
to <- as.POSIXlt(to)
mon <- seq.int(r1\$mon, 12 * (to\$year - r1\$year) +
to\$mon, by)
}
r1\$mon <- mon
r1\$isdst <- -1
res <- as.POSIXct(r1)
}

###### seq.POSIXt ######
else if (valid == 6L) {
if (missing(to)) {
mon <- seq.int(r1\$mon, by = by, length.out = length.out)
}
else {
to <- as.POSIXlt(to)
mon <- seq.int(r1\$mon, 12 * (to\$year - r1\$year) +
to\$mon, by)
}
r1\$mon <- mon
r1\$isdst <- -1
res <- as.POSIXct(r1)
}

and "res" is the object returned in both cases (I believe).

My system:
R version 2.12.1 (2010-12-16)
Platform: i486-pc-linux-gnu (32-bit)

locale:
[1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=C              LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8       LC_NAME=C