car (version 1.2-2)

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, hypotheses=NULL, ...)

## S3 method for class 'box.cox.powers':
print(x, digits=4, ...)

## S3 method for class 'box.cox.powers':
summary(object, digits=4, ...)

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.
hypotheses
if non-NULL, a list of hypotheses to be tested; each hypothesis should be a vector of values giving the power for each column of X. Note that the hypotheses that all powers are 1 and that all powers are 0 (log) ar
...
optional arguments to be passed to the optim function.
digits
number of places to round result.
x, object
box.cox.powers object.

Value

  • returns an object of class box.cox.powers, which may be printed or summarized. the print and summary methods are now identical; I've retained the latter for backwards compatibility.

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
attach(Prestige)
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.1014         2.580        -7.280 
## education    0.4242   0.4033         1.052        -1.428 
## 
## L.R. test, all powers = 0:  7.694   df = 2   p = 0.0213 
## L.R. test, all powers = 1:  48.8727   df = 2   p = 0  
plot(income, education)
plot(box.cox(income, .26), box.cox(education, .42))

box.cox.powers(income)
## Box-Cox Transformation to Normality 
## 
##  Est.Power Std.Err. Wald(Power=0) Wald(Power=1)
##     0.1793   0.1108         1.618        -7.406
## 
## L.R. test, power = 0:  2.7103   df = 1   p = 0.0997
## L.R. test, power = 1:  47.261   df = 1   p = 0 
qq.plot(income)
qq.plot(income^.18)

Run the code above in your browser using DataCamp Workspace