ts                   package:base                   R Documentation

Time-Series Objects

Description:

     The function `ts' is used to create time-series objects.

     `as.ts' and `is.ts' coerce an object to a time-series and test
     whether an object is a time series.

Usage:

     ts(data = NA, start = 1, end = numeric(0), frequency = 1,
        deltat = 1, ts.eps = getOption("ts.eps"), class, names)
     as.ts(x)
     is.ts(x)

Arguments:

    data: a vector or matrix of the observed time-series values.

   start: the time of the first observation.  Either a single number or
          a vector of two integers, which specify a natural time unit
          and a (1-based) number of samples into the time unit.  See 
          the examples for the use of the second form.

     end: the time of the last observation, specified in the same way
          as `start'.

frequency: the number of observations per unit of time.

  deltat: the fraction of the sampling period between successive
          observations; e.g., 1/12 for monthly data.  Only one of
          `frequency' or `deltat' should be provided.

  ts.eps: time series comparison tolerance.  Frequencies are considered
          equal if their absolute difference is less than `ts.eps'.

   class: class to be given to the result, or none if `NULL' or
          `"none"'.  The default is `"ts"' for a single series,
          `c("mts", "ts")' for multiple series.

   names: a character vector of names for the series in a multiple
          series: defaults to the colnames of `data', or `Series 1',
          `Series 2', ....

       x: an arbitrary R object.

Details:

     The function `ts' is used to create time-series objects.  These
     are vector or matrices with class of `"ts"' (and additional
     attributes) which represent data which has been sampled at
     equispaced points in time.  In the matrix case, each column of the
     matrix `data' is assumed to contain a single (univariate) time
     series.

     Class `"ts"' has a number of methods.  In particular arithmetic
     will attempt to align time axes, and subsetting to extract subsets
     of series can be used (e.g. `EuStockMarkets[, "DAX"]').  However,
     subsetting the first (or only) dimension will return a matrix or
     vector, as will matrix subsetting.

     The value of argument `frequency' is used when the series is
     sampled an integral number of times in each unit time interval. 
     For example, one could use a value of `7' for `frequency' when the
     data are sampled daily, and the natural time period is a week, or
     `12' when the data are sampled monthly and the natural time period
     is a year.  Values of `4' and `12' are assumed in (e.g.) `print'
     methods to imply a quarterly and monthly series respectively.

     `as.ts' will use the `tsp' attribute of the object if it has one
     to set the start and end times and frequency.

See Also:

     `tsp', `frequency', `start', `end', `time', `window'; `print.ts',
     the print method for time series objects; `plot.ts', the plot
     method for time series objects. Standard package ts for many
     additional time-series functions.

Examples:

     ts(1:10, frequency = 4, start = c(1959, 2)) # 2nd Quarter of 1959
     print( ts(1:10, freq = 7, start = c(12, 2)), calendar = TRUE) # print.ts(.)
     ## Using July 1954 as start date:
     gnp <- ts(cumsum(1 + round(rnorm(100), 2)),
               start = c(1954, 7), frequency = 12)
     plot(gnp) # using `plot.ts' for time-series plot

     ## Multivariate
     z <- ts(matrix(rnorm(300), 100, 3), start=c(1961, 1), frequency=12)
     class(z)
     plot(z)
     plot(z, plot.type="single", lty=1:3)

     # Ensure working arithmetic for `ts' objects :
     stopifnot(z == z)
     stopifnot(z-z == 0)


     ## A phase plot:
     data(nhtemp)
     plot(nhtemp, c(nhtemp[-1], NA), cex = .8, col="blue",
          main = "Lag plot of New Haven temperatures")
     ## a clearer way to do this would be
     library(ts)
     plot(nhtemp, lag(nhtemp, 1), cex = .8, col="blue",
          main = "Lag plot of New Haven temperatures")

