Dear [R] people, I am looking for a method to test if there are any changes (jump points) in a time series data set or not. If there are, I would like to identify the jump points. All the data is available from the beginning so an offline method could be used. The current data set that I have could be seen as a time series with five almost equally sized segments that stands out to have different (constant) means and possibly different variances. All 10000 data points can be considered independent and containing 1-2 percent outliers. Actually, the data set contains not only one variable, but several variables that are all known to have the same jump point positions, if any. I believe that several variables could be used in a multivariate approach to improve the identification of the jump points, but a univariate method is ok too. It would also be possible to identify the positions visually, but I am looking for a method that could be applied automatically. It should ofcourse also be applicable to new data sets, which could have totally different number of jump points, jump point positions, and different means and variances. Between different data sets there is little or nothing in common and for this reason, I believe, methods like HMM won't work since I have no test data to learn the models. Also, even though the jump points are within about the same distance from each other in the current data set, this might not always be case. The current reference I have is "Detection of Abrupt Changes - Theory and Application" by Basseville & Nikiforov. They explain several methods which seems promising to me, even a few offline methods. Do anyone know about other references? Do anyone know if B&N's methods (or others) are implemented in [R] or S-Plus? If not, maybe someone knows about other implementations that I could port? Thank you Henrik Bengtsson Dept. of Mathematical Statistics @ Centre for Mathematical Sciences Lund Institute of Technology/Lund University, Sweden (+2h UTC) Office: P316, +46 46 222 9611 (phone), +46 46 222 4623 (fax) hb at maths.lth.se, http://www.maths.lth.se/matstat/staff/hb/ -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
On Mon, 10 Sep 2001, Henrik Bengtsson wrote:> Dear [R] people, I am looking for a method to test if there are any > changes (jump points) in a time series data set or not. If there are, I > would like to identify the jump points. All the data is available from the > beginning so an offline method could be used. >The strucchange package may be helpful here. -thomas Thomas Lumley Asst. Professor, Biostatistics tlumley at u.washington.edu University of Washington, Seattle -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
Henrik Bengtsson wrote:> > Dear [R] people, I am looking for a method to test if there are any > changes (jump points) in a time series data set or not.The package "strucchange" offers a couple of methods to test whether there are any jump points or not. In the regression context it's just regression with a constant, i.e. formulas of type y ~ 1.> If there are, I would like to identify the jump points.With the methods in "strucchange" you can do so visually by interpreting empirical fluctuation processes, see efp() in "strucchange". An algorithm for estimating the number/location of the breakpoints is not implemented (yet). But I've got a preliminary version of a function for this task, which I can send you. You will also find some references for structural change tests in the help pages of "strucchange". Achim -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
A simple method for detecting (even subtle) change in the mean in a time serie is by using cumulate sums (cumsum). A reference: Ibanez, F., J.M. Fromentin & J. Castel, 1993. Application de la methode des sommes cumulees a l'analyse des series chronologiques oceanographiques. C. R. Acad. Sci. Paris, Life Sciences, 316:745-748. A powerful multivariate method for detecting changes in time series is 'D2 to the center'. Reference: Ibanez, F., 1981. Immediate detection of heterogeneities in continuous multivariate oceanographic recordings. Application to time series analysis of changes in the bay of Villefranche sur mer. Limnol. Oceanogr., 26:336-349. Best regards, Philippe Grosjean ...........]<(({?<...............<?}))><............................... ) ) ) ) ) __ __ ( ( ( ( ( |__) | _ ) ) ) ) ) | hilippe |__)rosjean ( ( ( ( ( Marine Biol. Lab., ULB, Belgium ) ) ) ) ) __ ( ( ( ( ( |\ /| |__) ) ) ) ) ) | \/ |ariculture & |__)iostatistics ( ( ( ( ( ) ) ) ) ) e-mail: phgrosje at ulb.ac.be or phgrosjean at sciviews.org ( ( ( ( ( SciViews project coordinator (http://www.sciviews.org) ) ) ) ) ) tel: 00-32-2-650.29.70 (lab), 00-32-2-673.31.33 (home) ( ( ( ( ( ) ) ) ) ) "I'm 100% confident that p is between 0 and 1" ( ( ( ( ( L. Gonick & W. Smith (1993) ) ) ) ) ) ....................................................................... -----Message d'origine----- De : owner-r-help at stat.math.ethz.ch [mailto:owner-r-help at stat.math.ethz.ch]De la part de Henrik Bengtsson Envoye : lundi 10 septembre 2001 17:44 A : R-help at stat.math.ethz.ch Objet : [R] Offline change detection methods? Dear [R] people, I am looking for a method to test if there are any changes (jump points) in a time series data set or not. If there are, I would like to identify the jump points. All the data is available from the beginning so an offline method could be used. The current data set that I have could be seen as a time series with five almost equally sized segments that stands out to have different (constant) means and possibly different variances. All 10000 data points can be considered independent and containing 1-2 percent outliers. Actually, the data set contains not only one variable, but several variables that are all known to have the same jump point positions, if any. I believe that several variables could be used in a multivariate approach to improve the identification of the jump points, but a univariate method is ok too. It would also be possible to identify the positions visually, but I am looking for a method that could be applied automatically. It should ofcourse also be applicable to new data sets, which could have totally different number of jump points, jump point positions, and different means and variances. Between different data sets there is little or nothing in common and for this reason, I believe, methods like HMM won't work since I have no test data to learn the models. Also, even though the jump points are within about the same distance from each other in the current data set, this might not always be case. The current reference I have is "Detection of Abrupt Changes - Theory and Application" by Basseville & Nikiforov. They explain several methods which seems promising to me, even a few offline methods. Do anyone know about other references? Do anyone know if B&N's methods (or others) are implemented in [R] or S-Plus? If not, maybe someone knows about other implementations that I could port? Thank you Henrik Bengtsson Dept. of Mathematical Statistics @ Centre for Mathematical Sciences Lund Institute of Technology/Lund University, Sweden (+2h UTC) Office: P316, +46 46 222 9611 (phone), +46 46 222 4623 (fax) hb at maths.lth.se, http://www.maths.lth.se/matstat/staff/hb/ -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._. _._ -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._