-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBoxCox.MAC
More file actions
46 lines (45 loc) · 1.05 KB
/
BoxCox.MAC
File metadata and controls
46 lines (45 loc) · 1.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
##
## ==================================================
## Box-Cox Transforms
## Minitab Macro Function by Chanseok Park
## (MTHSC 805-Clemson University, IE-68722-PNU)
##
## Usage: We assume:
## c11 = response
## c1-c4 = predictors
## c5 = lambda
## c6 = MSE (default) or SSE
##
## if you want to use SSE instead of MSE
##
## MTB > %U:\mthsc805\minitab\BOXCOX c11 c1-c4 c5 c6;
## SUBC> SSE.
##
## ==================================================
MACRO
BOXCOX Y X.1-X.M lambda MSE;
SSE.
MCONSTANT k1 k2 k3 i N
MCOLUMN X.1-X.M Y Y1 lambda MSE
brief 0
let n = count(lambda)
do i = 1:n
IF abs(lambda(i)) > 0.0001
let k2 = exp( mean( log(Y) ) )
let k1 = 1 / (lambda(i) * k2**(lambda(i)-1))
let Y1 = k1 * (Y**(lambda(i))-1)
ELSE
## ---------------------------
## lambda (lambda=0)
let k2 = exp( mean( log(Y) ) )
let Y1= k2 * log(Y)
ENDIF
regress Y1 M X.1-X.M;
mse k3.
let MSE(i) = k3
enddo
IF SSE = 1
let MSE = (count(Y)-M-1)*MSE
ENDIF
brief 2
ENDMACRO