BoxCox: Box Cox Transformation

View source: R/forecast2.R

BoxCoxR Documentation

Box Cox Transformation

Description

BoxCox() returns a transformation of the input variable using a Box-Cox transformation. InvBoxCox() reverses the transformation.

Usage

BoxCox(x, lambda)

InvBoxCox(x, lambda, biasadj = FALSE, fvar = NULL)

Arguments

x

a numeric vector or time series of class ts.

lambda

transformation parameter. If lambda = "auto", then the transformation parameter lambda is chosen using BoxCox.lambda (with a lower bound of -0.9)

biasadj

Use adjusted back-transformed mean for Box-Cox transformations. If transformed data is used to produce forecasts and fitted values, a regular back transformation will result in median forecasts. If biasadj is TRUE, an adjustment will be made to produce mean forecasts and fitted values.

fvar

Optional parameter required if biasadj=TRUE. Can either be the forecast variance, or a list containing the interval level, and the corresponding upper and lower intervals.

Details

The Box-Cox transformation (as given by Bickel & Doksum 1981) is given by

f(x;lambda)=sign(x)(|x|^lambda - 1)/lambda

if lambda is not equal to 0. For lambda=0,

f(x;0)=log(x)

.

Value

a numeric vector of the same length as x.

Author(s)

Rob J Hyndman & Mitchell O'Hara-Wild

References

Box, G. E. P. and Cox, D. R. (1964) An analysis of transformations. JRSS B 26 211–246. Bickel, P. J. and Doksum K. A. (1981) An Analysis of Transformations Revisited. JASA 76 296-311.

See Also

BoxCox.lambda

Examples


lambda <- BoxCox.lambda(lynx)
lynx.fit <- ar(BoxCox(lynx,lambda))
plot(forecast(lynx.fit,h=20,lambda=lambda))


forecast documentation built on July 25, 2022, 5:05 p.m.