[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 mailing list