sabl(x, power=<<see below>>, calendar=F, trend=11, seasonal=15, revisions=F)
TRANSFORM. A power transformation is chosen that minimizes a t-test of the interaction between the trend component and the seasonal component from among the powers that are in the input power. No transformation is performed if there are non-positive values in the series. A decomposition in which the amplitude of seasonal component is related to the trend may need a different transformation.
CALENDAR. The calendar component is only useful when the data are monthly, aggregated (e.g., the sum of sales for each month), and there is likely to be a day of the week effect. A month length correction is made: each element of the series is multiplied by 30.4375 divided by the number of days in the month for the particular element. (30.4375 = 365.25/12 is the average number of days per month.) A regression is then performed with a parameter for each day of the week to estimate the calendar component.
DECOMPOSE. The components returned by sabl are related as follows:
transformed equals trend + seasonal + irregular (if no calendar component was computed)
or
transformed equals trend + seasonal + calendar + irregular (if a calendar component was computed)
The estimation procedure first uses a running median smooth, which produces robustness weights from the size of the estimated irregular. These robustness weights multiplied with bisquare weights are used with a weighted running mean smooth. New robustness weights are computed and another weighted running mean smooth is performed. Weighted linear regression is used to estimate at the ends of the series where a running mean is ill- defined. The seasonal and calendar component include an additional cycle so that adjustments can be made to new data from previous estimation.
ADJUST. The adjusted component is the inverse transformation of the transformed series minus the seasonal component (and the calendar component, if present).
REVISIONS. Revisions are a measure of the variability of the adjustments. There are two ways to make adjustments, which we will term "actual adjustments" and "prediction adjustments". Actual adjustments require that the decomposition be performed with data that includes the cycle in question; prediction adjustments use the seasonal component (and calendar component) from the decomposition with data ending just prior to the cycle in question. If we let A be the time series of actual adjustments for the time points at which revisions are calculated and P is the time series of prediction adjustments at the same time points, then the revision is (A/P - 1) * 100 ( = ((A - P)/P) * 100) if the minimum of all of the adjustments is greater than zero. Otherwise, the revision is P - A. That is, if all adjusted values are positive, then a percent relative difference is computed, otherwise just a difference is computed.
Cleveland, W. S., Devlin, S. J. and Terpenning, I. J. (1981). The SABL statistical and graphical methods. Computing Information Library, Bell Labs, 600 Mountain Ave., Murray Hill, N.J. 07974, USA
Cleveland, W. S., Devlin, S. J. and Terpenning, I. J. (1981). The details of the SABL transformation, decomposition and calendar methods. Computing Information Library, Bell Labs, 600 Mountain Ave., Murray Hill, N.J. 07974, USA
h <- sabl(hstart) #decomposition of housing starts series tsplot(hstart, h$adjusted, lty=2:1, col=1) legend(1966.7, 210,c("unadjusted", "adjusted"), lty=2:1) title(main="Housing Starts")