car (version 0.8-1)

box.cox.powers: Multivariate Unconditional Box-Cox Transformations

Description

Estimates multivariate unconditional power transformations to multinormality by the method of maximum likelihood. The univariate case is obtained when only one variable is specified.

Usage

box.cox.powers(X, start=NULL, ...)

Arguments

X
a numeric matrix of variables (or a vector for one variable) to be transformed.
start
start values for the power transformation parameters; if NULL (the default), univariate Box-Cox transformations will be computed and used as the start values.
...
optional arguments to be passed to the optim function.

Value

  • returns an object of class box.cox.powers, which may be printed or summarized.

Details

Note that this is unconditional Box-Cox. That is, there is no regression model, and there are no predictors. The object is to make the distribution of the variable(s) as (multi)normal as possible. For Box-Cox regression, see the boxcox function in the MASS package. The function estimates the Box-Cox powers, $x_{j}^{\prime }=(x_{j}^{\lambda _{j}}-1)/\lambda _{j}$ for $\lambda _{j} \neq 0$ and $x_{j}^{\prime }=\log x_{j}$ for $\lambda _{j}=0$. Subsequently using ordinary power transformations (i.e., $x^p$ for $p \neq 0$) achieves the same result.

References

Box, G. E. P. and Cox, D. R. (1964) An analysis of transformations. JRSS B 26 211--246. Cook, R. D. and Weisberg, S. (1999) Applied Regression, Including Computing and Graphics. Wiley.

See Also

boxcox, box.cox, box.cox.var, box.cox.axis

Examples

Run this code
data(Prestige)
attach(Prestige)
summary(box.cox.powers(cbind(income, education)))
##  Box-Cox Transformations to Multinormality 
## 
##            Est.Power Std.Err. Wald(Power=0) Wald(Power=1)
##  income       0.2617   0.1018        2.5697       -7.2512
##  education    0.4242   0.4049        1.0475       -1.4222
## 
##  L.R. test, all powers = 0:  7.6186   df = 2   p = 0.0222
##  L.R. test, all powers = 1:  48.3936   df = 2   p = 0 
plot(income, education)
plot(box.cox(income, .26), box.cox(education, .42))

summary(box.cox.powers(income))
## Box-Cox Transformation to Normality 
## 
##  Est.Power Std.Err. Wald(Power=0) Wald(Power=1)
##     0.1793   0.1114          1.61       -7.3698
## 
## L.R. test, power = 0:  2.6837   df = 1   p = 0.1014
## L.R. test, power = 1:  46.7977   df = 1   p = 0 
qq.plot(income)
qq.plot(income^.18)

Run the code above in your browser using DataCamp Workspace