Calculates back-transformed means with approximate standard errors and confidence intervals (V.M. Cave).

### Options

`PRINT` = string tokens |
Controls printed output (`description` , `means` , `backmeans` ); default `desc` , `back` |
---|---|

`PLOT` = string tokens |
The confidence intervals of the back-transformed means to plot (`backtransformed` , `approximate` , `both` ); default `*` i.e. none |

`TRANSFORMATION` = string tokens |
Transformation (`identity` , `logarithm` , `log10` , `logit` , `squareroot` , `reciprocal` , `power` , `probit` , `complementaryloglog` ,`logratio` , `angular` , `arcsinesquareoot` , `calculated` ); default `iden` (i.e. no transformation) |

`CLOG` = scalar |
Constant c for the `logarithm` and `log10` transformations, in form log(mean+c); default 0 |

`EXPONENT` = scalar |
Exponent for `power` transformation; default -2 |

`KLOGRATIO` = scalar |
Parameter k for `logratio` transformation, in form log(mean/(mean+k)); default 1 |

`%SCALE` = string token |
Controls whether back-transformed logit, probit, angular, arcsine-squareroot and complementary log-log values are expressed on the percentage scale (`yes` , `no` ); default `no` |

`BACKTRANSFORMATION` = expression |
Expression, formed using argument `Y` , that defines the inverse of the transformation; must be specified when `TRANSFORMATION` `=` `calculated` |

`DERIVATIVE` = expression |
Expression, formed using argument `Y` , that defines the first derivative of the transformation; must be specified when `TRANSFORMATION` `=` `calculated` |

`CIPROBABILITY` = scalar |
Probability for the confidence intervals; default 0.95 |

`DIRECTION` = string tokens |
Order in which the back-transformed means are plotted (`ordinal` , `ascending` , `descending` ); default `ordi` |

`USEPENS` = string tokens |
Whether to use the current pen definitions for plotting; (`yes` , `no` ); default `no` |

`WINDOW` = scalar |
Window to use for plot; default 3 |

### Parameters

`MEANS` = tables, variates or scalars |
Supplies the transformed mean(s) |
---|---|

`SEMEANS` = tables, variates or scalars |
Supplies the standard error(s) of the transformed mean(s) |

`DF` = scalars |
Degrees of freedom to construct the confidence intervals; default `*` |

`DECIMALS` = scalars |
Number of decimal places for printing; default `*` |

`BACKTRANSFORMEDMEANS` = tables, variates or scalars |
Saves the back-transformed means |

`SEBACKTRANSFORMEDMEANS` = tables, variates or scalars |
Saves the approximate standard errors for the back-transformed means |

`CIAPPROXIMATE` = pointers |
Saves the approximate confidence intervals for the back-transformed means |

`CIBACKTRANSFORMED` = pointers |
Saves the back-transformed confidence intervals for the back-transformed means |

`TITLE` = texts |
Title for plot; default `*` i.e. none |

`YTITLE` = texts |
Title for y-axis; default `*` i.e. none |

`XTITLE` = texts |
Title for x-axis; default `*` i.e. formed automatically |

### Description

`BACKTRANSFORM`

calculates back-transformed means, with approximate standard errors and confidence intervals. The means and corresponding standard errors, for back-transforming, are supplied using the `MEANS`

and `SEMEANS`

parameters, respectively, as either tables, variates or scalars. If `MEANS`

supplies a table or variate, `SEMEANS`

can be either of the same type or a scalar, whereas if `MEANS`

supplies a scalar, `SEMEANS`

must be a scalar.

The degrees of freedom, used to construct the confidence intervals, can be set using the `DF`

parameter. If these are not supplied, *z*-scores are used to form the confidence intervals. The probability for the confidence intervals is specified by the `CIPROBABILITY`

option; the default 0.95 gives 95% confidence intervals.

The function that was used to transform the data prior to analysis is specified using the `TRANSFORMATION`

option; the default takes the identity link (i.e. no transformation). The natural logarithm, log10, logit, square root, reciprocal, power, probit, complementary log-log, log-ratio, angular (in degrees) and arcsine-square root (in radians) functions are provided directly by the `TRANSFORMATION`

option. Note: `angular`

transformed data are assumed to be in degrees, whereas `arcsinesquareroot`

transformed data are assumed to be in radians.

You can also define your own transformation by setting `TRANSFORMATION`

`=`

`calculated`

and providing expressions to calculate the inverse and first derivative of the transformation, using the `BACKTRANSFORMATION`

and `DERIVATIVE`

options, respectively. The calculations are specified in terms of the argument `Y`

. Thus, for example, the `logarithm`

transformation could be specified by setting options

`BACKTRANSFORMATION=!E(exp(Y))`

and

`DERIVATIVE=!E(1/Y).`

The `CLOG`

option sets the constant *c* used by the `logarithm`

and `log10`

transformations (default 0), the `EXPONENT`

option sets the exponent used by the `power`

transformation (default -2) and the `KLOGRATIO`

option sets the parameter *k* used by the `logratio`

transformation (default 1).

By default, back-transformation from the `logit`

, `probit`

, `angular`

or `arcsinesquareroot`

scale returns proportions. However, you can set option `%SCALE=yes`

to return percentages.

The `PLOT`

option allows you to request plots of the results, using settings:

`backtransformed` |
for back-transformed means and back-transformed confidence intervals (i.e. confidence intervals that maintain exactly the percent coverage on the transformed scale), |
---|---|

`approximate` |
for back-transformed means with approximate confidence intervals (i.e. derived from the approximate standard errors), and |

`both` |
for back-transformed means with both types of confidence interval. |

By default no plots are produced.

The `TITLE`

, `YTITLE`

and `XTITLE`

parameters can supply an overall title, a y-axis title and a x-axis title for the plot, respectively. By default, neither an overall title nor a y-axis title is displayed. The default for the x-axis, when `MEANS`

supplies the transformed means as a table, is to use the identifiers of the table’s classifying factors to form a title for the x-axis. If `MEANS`

supplies a variate or scalar, the default is not to display an x-axis title. To omit the x-axis title, you can supply a blank string i.e.

`XTITLE=' '`

By default, the pen attributes used for plotting are determined automatically within the procedure. However, you can set `USEPENS`

to `yes`

, to request that the current `COLOURS`

, `CFILL`

, `SYMBOLS`

, `SMSYMBOL`

and `THICKNESS`

pen definitions of pens 1 and 2 are used. Pen 1 controls the colour, symbol, symbol size and line thickness used to plot the back-transformed means with back-transformed confidence intervals, whereas Pen 2 controls these attributes when the back-transformed means are plotted with approximate confidence intervals. The `WINDOW`

option specifies the window used for plotting; default 3.

By default, the back-transformed means are plotted in order of their ordinal level, however you can use the `DIRECTION`

option to request that they are plotted in ascending or descending numerical value instead.

The `BACKTRANSFORMEDMEANS`

, `SEBACKTRANSFORMEDMEANS`

parameters can save back-transformed means, approximate standard errors, in data structures of the same type as `MEANS`

. The `CIAPPROXIMATE`

and `CIBACKTRANSFORMED`

parameters can save pointers of approximate confidence intervals and back-transformed confidence intervals, respectively. The pointers contain two data structures elements, of the same type as `MEANS`

, storing the lower and the upper confidence limits, respectively.

Printed output is controlled by the `PRINT`

option, with settings:

`description` |
provides a description of the output, |
---|---|

`means` |
prints the transformed means, with their standard errors and confidence intervals, and |

`backmeans` |
prints the back-transformed means, with their approximate standard errors and confidence intervals. |

You can set the number of decimals places to appear in the printed output, using the `DECIMALS`

parameter.

Options: `PRINT`

, `PLOT`

, `TRANSFORMATION`

, `CLOG`

,` EXPONENT`

, `KLOGRATIO`

, `BACKTRANSFORMATION`

, `DERIVATIVE`

, `CIPROBABILITY`

, `DIRECTION`

, `USEPENS`

, `WINDOW`

.

Parameters: `MEANS`

, `SEMEANS`

, `DF`

, `DECIMALS`

, `BACKTRANSFORMEDMEANS`

, `SEBACKTRANSFORMEDMEANS`

, `CIPAPPROXIMATE`

, `CIBACKTRANSFORMED`

, `TITLE`

, `YTITLE`

, `XTITLE`

.

### Method

`BACKTRANSFORM`

uses a first-order Taylor series expansion, to obtain approximate standard errors for the back-transformed means. The methodology is described in Jørgensen & Pedersen (1998). In brief, let û denote the estimated mean on the transformed scale, se_{u} its standard error,* g*() the transformation function and *g′*() the first derivative of the transformation function. On the back-transformed scale the estimated mean (ӯ) and standard error (se_{ӯ}) are approximated by *g*^{-1}(û) and se_{u} / mod(g′(ӯ)), respectively.

A back-transformed confidence interval is given by

(*g*^{-1}( û – *t* × se_{u}), *g*^{-1}( û + *t* × se_{u}))

where *t* is the upper (1-`CIPROBABILITY`

)/2 critical value for the *t* distribution. Note that, when the degrees of freedom have not been set using the `DF`

parameter, the *z*-score (i.e. the Normal distribution) is used to construct the confidence interval instead of the *t*-value. For the logratio and reciprocal transformations, when the estimated mean and confidence

limit on the transformed scale lie on different sides of the singularity in the inverse function

of the transformation, the back-transformed confidence limit is set to a missing value.

An approximate confidence interval

(ӯ – *t* × se_{ӯ}, ӯ + *t* × se_{ӯ})

is also provided. However, this should be used only to evaluate the validity of the approximate standard error. If the back-transformed and approximate confidence intervals differ greatly, the approximate standard error is inadequate.

### Action with `RESTRICT`

BACKTRANSFORM will work when MEANS and/or SEMEANS supplies a restricted variate; however, if both variates are restricted they must be restricted in the same way. Furthermore, their unrestricted length must be the same.

### References

Jørgensen, E., & Pedersen, A.R. (1998). How to obtain those nasty standard errors from transformed data – and why they shouldn’t be used. Biometry Research Unit, Danish Institute of Agricultural Sciences.

### See also

Directives: `AKEEP`

, `PREDICT`

, `VPREDICT`

.

### Example

CAPTION 'BACKTRANSFORM examples',\ 'Pup rat data from Weil (1970, Food and Cosmetics Toxicology)';\ STYLE=meta,plain FACTOR [NVALUES=64; LEVELS=32; VALUES=2(1...32)] Litter & [LEVELS=2; LABELS=!t('4','21'); VALUES=(1,2)32] Time & [LEVELS=2; LABELS=!t('control','treated'); VALUES=32(1,2)] Diet VARIATE [NVALUES=64] Pups READ [PRINT=*] Pups 13 13 12 12 9 9 9 9 8 8 8 8 13 12 12 11 10 9 10 9 9 8 13 11 5 4 7 5 10 7 10 7 12 12 11 11 10 10 9 9 11 10 10 9 10 9 9 8 9 8 5 4 9 7 7 4 10 5 6 3 10 3 7 0 : CAPTION 'ANOVA Example: Means and standard errors obtained from AKEEP';\ STYLE=meta BLOCKS Litter TREATMENTS Diet*Time ANOVA [PRINT=aov] log(Pups+1) AKEEP TERMS=Diet.Time; MEANS=meansA; SEMEANS=semsA; DFCEFFECTS=dfA BACKTRANSFORM [TRANSFORMATION=log; CLOG=1; PLOT=both]\ meansA; SEMEANS=semsA; DF=dfA CAPTION 'GLM Example: Means and standard errors obtained from PREDICT';\ STYLE=meta MODEL [DISTRIBUTION=Poisson; LINK=log] Pups FIT [PRINT=summary] Diet*Time RKEEP DF=dfB PREDICT [PRINT=*; PREDICTIONS=meansB; SE=semsB; BACKTRANSFORM=none]\ Diet,Time BACKTRANSFORM [TRANSFORMATION=log; PLOT=both] \ meansB; SEMEANS=semsB; DF=dfB CAPTION 'REML Example: Means and standard errors obtained from VPREDICT';\ STYLE=meta VCOMPONENT [FIXED=Diet*Time] RANDOM=Litter REML log(Pups+1) VKEEP [WMETHOD=add] TERMS=Diet.Time; DDF=dfC VPREDICT [PRINT=*; PREDICTIONS=meansC; SE=semsC] Diet,Time BACKTRANSFORM [TRANSFORMATION=log; CLOG=1; PLOT=both]\ meansC; SEMEANS=semsC; DF=dfC CAPTION 'GLMM Example: Means and standard errors obtained from VPREDICT';\ STYLE=meta GLMM [PRINT=model,components; DISTRIBUTION=Poisson; LINK=log;\ FIXED=Diet*Time; RANDOM=Litter; DISPERSION=*] Pups VKEEP [WMETHOD=add] TERMS=Diet.Time; DDF=dfD VPREDICT [PRINT=*; PREDICTIONS=meansD; SE=semsD] Diet,Time BACKTRANSFORM [TRANSFORMATION=log; PLOT=both]\ meansD; SEMEANS=semsD; DF=dfD