ts {stats} | R Documentation |
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.
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)
data |
a numeric vector or matrix of the observed time-series
values. A data frame will be coerced to a numeric matrix via
data.matrix . |
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. |
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.
Time series must have an least one observation, and although they need
not be numeric there is very limited support for non-numeric 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. There is a method for t
that transposes the series as a matrix (a one-column matrix if a vector)
and hence returns a result that does not inherit from class "ts"
.
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.
is.ts
tests if an object is a time series. It is generic: you
can write methods to handle specific classes of objects,
see InternalMethods.
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
tsp
,
frequency
,
start
,
end
,
time
,
window
;
print.ts
, the print method for time series objects;
plot.ts
, the plot method for time series objects.
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) ## 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 ## Not run: plot(nhtemp, lag(nhtemp, 1), cex = .8, col="blue", main = "Lag plot of New Haven temperatures") ## End(Not run)