cheineme at zedat.fu-berlin.de
2009-Dec-22 18:54 UTC
[R] strucchange | breakpoints - pure structural change model?
Dear R-Team, Am I right supposing that the "breakpoints()" function in the strucchange package is an implementation of the pure structural change model proposed by Bai and Perron (1997, 2003)? My question relates to a partial structural change model that Bai and Perron formulate in their 2003 paper, e.g. formulated as y = x' beta + z' delta_j + epsilon, where beta and delta are vectors of coefficients. x represents a vector of variables with an invariant effect on y. z represents a vector of variables, of which the effect on y is allowed to vary due to structural breaks. j indicates the respective segments, which result from the structural breaks. As far as I understand, the "breakpoints()" function can only be used to estimate equations where beta has dim (0x0), i.e. all coefficients are subject to structural breaks (at the same time). Is it possible to tell R that a certain variable is not subject to structural breaks? Put differently, is there a way to estimate partial structural change models using the strucchange package? Thank you very much for your help (and for the greatest statistical software, anyway). Hans Christian doctoral student, Freie Universit?t Berlin
Achim Zeileis
2009-Dec-22 19:19 UTC
[R] strucchange | breakpoints - pure structural change model?
Hans Christian:> Am I right supposing that the "breakpoints()" function in the strucchange > package is an implementation of the pure structural change model proposed > by Bai and Perron (1997, 2003)?Yes, see ?breakpoints. In the references section there is a pointer to our CSDA 2003 paper, a preprint version of which can be found on my webpage.> My question relates to a partial structural change model that Bai and > Perron formulate in their 2003 paper, e.g. formulated as > > y = x' beta + z' delta_j + epsilon, > > where beta and delta are vectors of coefficients. x represents a vector of > variables with an invariant effect on y. z represents a vector of > variables, of which the effect on y is allowed to vary due to structural > breaks. j indicates the respective segments, which result from the > structural breaks. > > As far as I understand, the "breakpoints()" function can only be used to > estimate equations where beta has dim (0x0), i.e. all coefficients are > subject to structural breaks (at the same time). > > Is it possible to tell R that a certain variable is not subject to > structural breaks? Put differently, is there a way to estimate partial > structural change models using the strucchange package?Simple answer, no, it's not implemented at the moment. The only way to do something similar would be to estimate the full structural change model and use its breakpoints to fit the partial structural change model. In pseudocode: ## estimate full structural change model bp <- breakpoints(y ~ x + z) ## fit full structural change model fm1 <- lm(y ~ breakfactor(bp) / (x + z)) ## fit partial structural change model fm2 <- lm(y ~ x + breakfactor(bp)/z) The main disadvantage is that the breakpoints are potentially suboptimal in the partial change model. In many practical applications, they are very similar, though. Another package which implements partial changes but for a different class of breakpoints (broken-line trends instead of "jumps") is the "segmented" package. There is a paper by Vito Muggeo, the maintainer, about it: http://www.R-project.org/doc/Rnews/Rnews_2008-1.pdf It might be worth a look for you. One final point: If you send questions like this to R-help, be sure to Cc the package maintainer (as the R posting guide, linked below, tells you). Hope that helps, Z> Thank you very much for your help (and for the greatest statistical > software, anyway). > Hans Christian > > > doctoral student, Freie Universit?t Berlin > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > >