From ripley at stats.ox.ac.uk  Tue Aug 10 10:11:39 2004
From: ripley at stats.ox.ac.uk (Prof Brian Ripley)
Date: Tue Aug 10 10:11:48 2004
Subject: [Rd] Subsetting time series
In-Reply-To: <16664.33196.178734.309201@gargle.gargle.HOWL>
Message-ID: <Pine.LNX.4.44.0408100909110.24918-100000@gannet.stats>

On Tue, 10 Aug 2004, Martin Maechler wrote:

> >>>>> "BDR" == Prof Brian Ripley <ripley@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@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


[Rd] Subsetting time series
Prof Brian Ripley