local.trend {pastecs} | R Documentation |
A simple method using cumulated sums that allows to detect changes in the tendency in a time series
local.trend(x, k=mean(x), plotit=TRUE, ...) ## S3 method for class 'local.trend': identify(loctrd)
x |
a regular time series (a 'rts' object under S+ or a 'ts' object under R) |
k |
the reference value to substract from cumulated sums. By default, it is the mean of all observations in the series |
plotit |
if plotit=TRUE (by default), a graph with the cumsum curve superposed to the original series is plotted |
... |
additional arguments for the graph |
loctrd |
a 'local.trend' object, as returned by the function local.trend() |
With local.trend()
, you can:
- detect changes in the mean value of a time series
- determine the date of occurence of such changes
- estimate the mean values on homogeneous intervals
a 'local.trend' object is returned. It has the method identify()
Once transitions are identified with this method, you can use stat.slide()
to get more detailed information on each phase. A smoothing of the series using running medians (see decmedian()
) allows also to detect various levels in a time series, but according to the median statistic. Under R, see also the 'strucchange' package for a more complete, but more complex, implementation of cumsum applied to time series.
Frédéric Ibanez (ibanez@obs-vlfr.fr), Philippe Grosjean (phgrosjean@sciviews.org)
Ibanez, F., J.M. Fromentin & J. Castel, 1993. Application de la méthode des sommes cumulées à l'analyse des séries chronologiques océanographiques. C. R. Acad. Sci. Paris, Life Sciences, 316:745-748.
trend.test
, stat.slide
, decmedian
data(bnr) # Calculate and plot cumsum for the 8th series bnr8.lt <- local.trend(bnr[,8]) # To identify local trends, use: # identify(bnr8.lt) # and click points between which you want to compute local linear trends...