Programming the statistical procedures from SAS

Box Cox

Accepted Solution Solved
Reply
Frequent Contributor
Posts: 91
Accepted Solution

Box Cox

I conducted a BOX-COX analysis using the following code:

ods rtf file='/folders/myfolders/regr4BCoxNresuls/CLnrGFR1.rtf' style=journal;

ods TRACE ON;

 

ods output FitStatistics=FitStat  ParameterEstimates=param;

proc transreg data=boot2 plots=all; /*plots(only)=FITPLOT(stats=none); */

model boxcox(CLnr/convenient lambda=-3 to 3 by 0.125)=identity(GFR1)/cl; /*SPEC;*/

output out=pred   ;

proc print data=fitstat;run;

proc print data=param;run;

proc print data=pred;run;

run;

quit;

 

ods rtf close;

 

The best lamda was =0 which means that the log transformation for CLnr was best.  The data is posted below (Nstudyr4.csv)set which if I use log transformation for CLnr would give negative values.  On line it was suggested that I can do log transformation  if I add a constant to each value.  My question is how do I interpret the value for the intercept if I do a regression when I take the antilog with the added constant?

I have attached the data set and the BOX-Cox output.

SubjectCLCLrCLnrGFR1 GFR2
12.021.730.29125.5124.1
22.181.630.55114.3113.9
31.951.280.67102.2102
41.831.160.67101.6100.7
51.641.470.1796.695.6
61.941.720.2290.789.2
71.981.470.5187.886.2
81.671.070.684.583.6
91.251.190.0684.283.4
100.90.740.1677.776.5
111.531.060.4775.675.2
121.520.820.76867.5
131.581.230.3566.565.3
140.930.750.1864.464.2
150.930.95.6059.6
170.610.481.252.352.5
180.760.460.155252.3
190.570.440.3251.752.3
200.660.40.1749.349.7
210.510.150.5137.537.7
220.410.320.1935.535.7
230.650.57.34.334.4
240.90.580.073131.4
250.50.290.6128.129.3
260.310.220.2826.626.8
270.30.210.124.824.7
280.480.38.1818.6
290.420.190.2916.316.6
300.310.150.271616.6
310.20.120.1912.712.7
320.180.2.12.712.7
330.250.18.12.712.7
340.350.130.1210.312.7
350.20.120.239.812.7
360.150.080.12811.5
370.150.21.7.710.2
380.110.0920.0586.510.2
390.0460.0920.0184.78.9
400.0760.061.4.16.4
410.140.0340.0424.13.8
420.160.0180.1224.13.8
430.180.0150.1451.81.5
440.150.0180.1621.51.5

Accepted Solutions
Solution
‎08-30-2016 03:28 PM
Respected Advisor
Posts: 2,655

Re: Box Cox

So what if ln(CLnr) is negative?  There is no requirement that a dependent variable be positive.  If you are truly worried, rescale the dependent variable--say by multiplying by 1000.  Then the ln values will also be positive.  Since I suppose that CLnr is clearance of some metabolite, it is like shifting the measurement from millimolar to micromolar.

 

Steve Denham

View solution in original post


All Replies
Solution
‎08-30-2016 03:28 PM
Respected Advisor
Posts: 2,655

Re: Box Cox

So what if ln(CLnr) is negative?  There is no requirement that a dependent variable be positive.  If you are truly worried, rescale the dependent variable--say by multiplying by 1000.  Then the ln values will also be positive.  Since I suppose that CLnr is clearance of some metabolite, it is like shifting the measurement from millimolar to micromolar.

 

Steve Denham

Frequent Contributor
Posts: 91

Re: Box Cox

Thanks for the response and it addresses my issue.

SAS Super FREQ
Posts: 3,547

Re: Box Cox

Because your response data are positive, the log transformed response model is

log(Y) = a + b*x

or

Y = exp(a + b*x)  where a is the estimate for the intercept and b is the estimate for the explanatory coefficient.

 

If you define A=exp(a), you get Y = A*exp(b*x)

 

So the intercept  term multiplies the model: a unit change in the intercept estimate results in a mulitplicative change (a factor of e) in the predicted response.

 

You can do the same computation for other models. If you add c to the response before you fit the model, then

Y = -c + A*exp(b*x)

Frequent Contributor
Posts: 91

Re: Box Cox

Thanks for the response.

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 4 replies
  • 300 views
  • 0 likes
  • 3 in conversation