Movatterモバイル変換


[0]ホーム

URL:


Temporal Disaggregation of Time Series

This is a short introduction to tempdisagg. Our article ontemporal disaggregation of time series () in theR-Journal describes the package and the theory of temporaldisaggregation in more detail.

For citation, please seecitation("tempdisagg").

Disaggregating annual data to quarterly

Suppose we have an annual series and want to create quarterly valuesthat sum up to the annual values. Let us explore the annual sales of thepharmaceutical and chemical industry in Switzerland, from which we wantto create a quarterly series.

library(tempdisagg)data(swisspharma)plot(sales.a)

No indicator

The most simple method isdenton-cholette without anindicator. It performs a simple interpolation that meets the temporaladditivity constraint. In R, this can be done the following way:

m1<-td(sales.a~1,to ="quarterly",method ="denton-cholette")

td() produces an object of class"td". Theformula,'sales.a ~ 1', indicates that our low frequencyvariable will be disaggregated with a constant. The resulting quarterlyvalues of sales can be extracted with thepredict()function:

predict(m1)

As there is no additional information on quarterly movements, theresulting series is very smooth:

plot(predict(m1))

Using additional information

While this purely mathematical approach is easy to perform and doesnot need any other data series, the economic value of the resultingseries may be limited. There might be a related quarterly series thatfollows a similar movement than sales. For example, we may use quarterlyexports of pharmaceutical and chemical products:

plot(exports.q)

m2<-td(sales.a~0+ exports.q,method ="denton-cholette")

Because we cannot use more than one indicator with thedenton-cholette ordenton method, theintercept must be specified as missing in the formula(~ 0). Contrary to the first example, thetoargument is redundant, because the destination frequency can beinterfered from the time series properties ofexports.q.

The resulting model leads to a much more interesting series:

plot(predict(m2))

As the indicator series is longer than the annual series, there is anextrapolation period, in which the quarterly sales are forecasted.

With an indicator, thedenton-cholette method simplytransfers the movement of the indicator to the resulting series. Even ifin fact there were no correlation between the two series, there would bea strong similarity between the indicator and the resulting series.

Regression based disaggregation

In contrast, regression based methods transfer the movement only ifthe indicator series and the resulting series are actually correlated onthe annual level. For example, a Chow-Lin regression of the same problemas above can be performed the following way:

m3<-td(sales.a~ exports.q)

Aschow-lin-maxlog is the default method, it does notneed to be specified. Like with the correspondinglmmethod,summary() produces an overview of theregression:

summary(m3)#>#> Call:#> td(formula = sales.a ~ exports.q)#>#> Residuals:#>     Min      1Q  Median      3Q     Max#> -77.892  -7.711  -4.628   9.647  36.448#>#> Coefficients:#>              Estimate Std. Error t value Pr(>|t|)#> (Intercept) 1.241e+01  1.493e+00   8.311 1.06e-09 ***#> exports.q   1.339e-02  1.672e-04  80.111  < 2e-16 ***#> ---#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#>#> 'chow-lin-maxlog' disaggregation with 'sum' conversion#> 36 low-freq. obs. converted to 158 high-freq. obs.#> Adjusted R-squared: 0.9946   AR1-Parameter:     0 (truncated)

There is indeed a strong correlation between exports and sales, as ithas been assumed in the example above. The coefficient ofexports.q is highly significant, and the very high adjustedR-squared points to a strong relationship between the two variables. Thecoefficients are the result of a GLS regression between the annualseries.

The estimation of the AR1 parameter,rho, was estimated tobe negative; in order to avoid the undesirable side-effects of anegativerho, it has been truncated to 0. This feature can beturned off:

td(sales.a~ exports.q,truncated.rho =-1)#>#> Call:#> td(formula = sales.a ~ exports.q, truncated.rho = -1)#>#> Coefficients:#> (Intercept)    exports.q#>    12.31579      0.01341#>#> Use summary() for details.#> Use predict() to extract the final series.#>#> Use ?td to see the help file.

Again, we can extract the resulting quarterly series of sales:

plot(predict(m3))

Like all regression based methods,chow-lin-maxlog canalso be used with more than one indicator series (imports.qis only significant on a 10% level in the following example, it probablywill not help to produce a more accurate temporal disaggregation):

m4<-td(formula = sales.a~ exports.q+ imports.q)summary(m4)#>#> Call:#> td(formula = sales.a ~ exports.q + imports.q)#>#> Residuals:#>     Min      1Q  Median      3Q     Max#> -61.648  -7.139  -2.825   5.508  53.373#>#> Coefficients:#>              Estimate Std. Error t value Pr(>|t|)#> (Intercept) 11.685855   1.493077   7.827 5.08e-09 ***#> exports.q    0.011258   0.001158   9.723 3.26e-11 ***#> imports.q    0.003934   0.002113   1.862   0.0716 .#> ---#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#>#> 'chow-lin-maxlog' disaggregation with 'sum' conversion#> 36 low-freq. obs. converted to 158 high-freq. obs.#> Adjusted R-squared: 0.9949   AR1-Parameter:     0 (truncated)

Comparison of methods

In our example, we actually know the true data on quarterly sales, sowe can compare the artificial values to the true values:

plot(sales.q)lines(predict(m2),col ="blue")# Denton-Cholettelines(predict(m3),col ="red")# Chow-Lin

With an indicator series, both the Denton method and Chow-Lin producea series that is close to the true series. This is, of course, due tofact that in this example, exports are a good indicator for sales. Ifthe indicator is less close to the series of interest, the resultingseries will be less close to the true series.


[8]ページ先頭

©2009-2025 Movatter.jp