Next: buildfactor()
Up: Design Macros Help File
Previous: allaliases2()
Contents
Usage:
boxcoxvec(Model [,powers:pow]), CHARACTER scalar Model, REAL vector pow
boxcoxvec(rhs_model,y[,powers:pow]), CHARACTER scalar rhs_model, REAL
vectors y and pow.
|
Keywords:
ANOVA, analysis
boxcoxvec(Model, powers:Pow), where Model is a CHARACTER scalar
specifying a GLM model of the form "y = Rhs", computes the error SS for
y transformed to the boxcox powers given in Pow. Example: Model =
"yield = x + a + b", where response yield is a REAL vector, x is a
variate and a and b are factors. For this model Rhs is "x + a + b".
Any factors or variates in Rhs must have the same length as y. In the
example, x, a, and b must all be the same length as yield.
If powers:Pow is omitted, the default is Pow = run(-1,2,.25)
For each power P in Pow, the model "{boxcox(y,P)} = RHS" is fit using
anova() and the error SS is saved. The value returned by boxcoxvec()
is structure(power:Pow, SS:Ss), where Pow and Ss are vectors of powers
and error sums of squares.
boxcoxvec(Rhs,y [,powers:Pow]), where Rhs is a quoted string or
CHARACTER, does the same as boxcoxvec("y = Rhs" [,powers:Pow]). This
somewhat clumsier usage is maintained for backward compatibility.
A power that minimizes the error SS may be chosen to transform the data
for analysis.
Examples:
Cmd> y <- rnorm(20);ey <- exp(y)
NOTE: random number seeds set to 59622139 and 172924584
Cmd> a <- factor(rep(run(5),4))
Cmd> boxcoxvec("ey = a") # default powers; or boxcoxvec("a", ey)
component: power
(1) -1 -0.75 -0.5 -0.25 0
(6) 0.25 0.5 0.75 1 1.25
(11) 1.5 1.75 2
component: SS
(1) 179.93 72.889 34.971 21.487 17.979
(6) 20.624 31.191 58.929 131.81 332.94
(11) 915.71 2673 8140.8
Cmd> boxcoxvec("ey = a",powers:run(-.25,.25,1/16))#explore powers ~= 0
component: power
(1) -0.25 -0.1875 -0.125 -0.0625 0
(6) 0.0625 0.125 0.1875 0.25
component: SS
(1) 21.487 19.938 18.875 18.236 17.979
(6) 18.083 18.544 19.38 20.624
Cmd> lineplot(boxcoxvec("ey = a"),title:"Resid SS vs Powers")#graph it
See also boxcox(), lineplot(), 'models'.
Gary Oehlert
2003-01-15