Learn R Programming

MethComp (version 1.22.2)

AltReg: Estimate in a method comparison model with replicates

Description

Estimates in the general model for method comparison studies with replicate measurements by each method, allowing for a linear relationship between methods, using the method of alternating regressions.

Usage

AltReg( data, linked = FALSE, IxR = linked, MxI = TRUE, varMxI = FALSE, eps = 0.001, maxiter = 50, trace = FALSE, sd.lim = 0.01, Transform = NULL, trans.tol = 1e-6 )

Arguments

data
Data frame with the data in long format, (or a Meth object) i.e. it must have columns meth, item, repl and y
linked
Logical. Are the replicates linked across methods? If true, a random item by repl is included in the model, otherwise not.
IxR
Logical, alias for linked.
MxI
Logical, should the method by item effect (matrix effect) be in the model?
varMxI
Logical, should the method by item effect have method-specific variances. Ignored if only two methods are compared. See details.
eps
Convergence criterion, the test is the max of the relative change since last iteration in both mean and variance parameters.
maxiter
Maximal number of iterations.
trace
Should a trace of the iterations be printed? If TRUE iteration number, convergence criterion and current estimates of means and sds are printed.
sd.lim
Estimated standard deviations below sd.lim are disregarded in the evaluation of convergence. See details.
Transform
A character string, or a list of two functions, each other's inverse. The measurements are transformed by this before analysis. Possibilities are: "exp", "log", "logit", "pctlogit" (transforms percentages by the logit), "sqrt", "sq" (square), "cll" (complementary log-minus-log), "ll" (log-minus-log). For further details see choose.trans.
trans.tol
The tolerance used to check whether the supplied transformation and its inverse combine to the identity. Only used if Transform is a list of two functions.

Value

An object of class c("MethComp","AltReg"), which is a list with three elements:
Conv
A 3-way array with the 2 first dimensions named "To:" and "From:", with methods as levels. The third dimension is classifed by the linear parameters "alpha", "beta", and "sd".
VarComp
A matrix with methods as rows and variance components as columns. Entries are the estimated standard deviations.
data
The original data used in the analysis, with untransformed measurements (ys). This is needed for plotting purposes.
Moreover, if a transformation was applied before analysis, an attribute "Transform" is present; a list with two elements trans and inv, both of which are functions, the first the transform, the last the inverse.

Details

When fitting a model with both IxR and MxI interactions it may become very unstable to have different variances of the MxI random effects for each method, and hence the default option is to have a constant MxI variance across methods. On the other hand it may be grossly inadequate to assume these variances to be identical.

If only two methods are compared, it is not possible to separate different variances of the MxI effect, and hence the varMxI is ignored in this case.

The model fitted is formulated as: $$y_{mir} = \alpha_m + \beta_m(\mu_i+a_{ir} + c_{mi}) + e_{mir}$$ and the relevant parameters to report are the estimates sds of $a_{ir}$ and $c_{mi}$ multiplied with the corresonidng $beta_m$. Therefore, different values of the variances for MxI and IxR are reported also when varMxI==FALSE. Note that varMxI==FALSE is the default and that this is the opposite of the default in BA.est.

References

B Carstensen: Comparing and predicting between several methods of measurement. Biostatistics (2004), 5, 3, pp. 399--413.

See Also

BA.est, DA.reg, Meth.sim, MethComp

Examples

Run this code
data( ox )
ox <- Meth( ox )
## Not run: 
# ox.AR <- AltReg( ox, linked=TRUE, trace=TRUE, Transform="pctlogit" )
# str( ox.AR )
# ox.AR
# # plot the resulting conversion between methods
# plot(ox.AR,pl.type="conv",axlim=c(20,100),points=TRUE,xaxs="i",yaxs="i",pch=16)
# # - or the rotated plot
# plot(ox.AR,pl.type="BA",axlim=c(20,100),points=TRUE,xaxs="i",yaxs="i",pch=16) ## End(Not run)

Run the code above in your browser using DataLab