[Rd] Subsetting time series
Prof Brian Ripley
ripley at stats.ox.ac.uk
Tue Aug 10 10:11:39 CEST 2004
On Tue, 10 Aug 2004, Martin Maechler wrote:
> >>>>> "BDR" == Prof Brian Ripley <ripley at stats.ox.ac.uk>
> >>>>> on Tue, 10 Aug 2004 05:47:28 +0100 (BST) writes:
> BDR> On Tue, 10 Aug 2004, Ross Ihaka wrote:
> >> Rob Hyndman wrote:
> >> > When part of a time series is extracted, the time series component is
> >> > lost. e.g.,
> >> > x <- ts(1:10)
> >> > x[1:4]
> >> >
> >> > It would be nice if there was a subsetting function [.ts to avoid this
> >> > problem. However, it is beyond my R-coding ability to produce such a
> >> > thing. Is someone willing to do it?
> BDR> There is a [.ts, in src/library/stats/R/ts.R, and it is documented
> BDR> (?"[.ts").
> >> Have you had a look at "window"? The problem with "["
> >> its that it can produce non-contiguous sets of values.
> BDR> Yes.
> indeed. window() is what we have been advocation for a long
> time now ... (but see below).
> BDR> If you look in the sources for [.ts you will see,
> BDR> commented, the code that was once there to handle cases
> BDR> where the index was evenly spaced. But it was removed
> BDR> long ago in favour of window(). I tried to consult the
> BDR> logs, but it seems that in the shift from CVS to SVN
> BDR> recently I can't get at them. I think the rationale
> BDR> was that x[ind] should always produce an object of the
> BDR> same class.
> well, that can't have been the only rationale since now
> x[ind] is *not* of the same class - when the "ts" property is
> lost in any case.
`always of the same class' : for all (non-trivial) values of ind.
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-devel