fit.EP17: Fit CLSI EP17 Model Using log-transformed X and Y.

View source: R/methods.R

fit.EP17R Documentation

Fit CLSI EP17 Model Using log-transformed X and Y.

Description

This function fits the model proposed in CLSI EP17 by log-transforming CV (Y) as well as mean-values (X) und performing a linear regression of these. More specifically CV = A * Conc^B, where Conc = mean concentration of a sample and CV is on the percent-scale, is fitted by ordinary least squares (OLS) estimation of log(CV) = A + B * log(Conc). Fitted values are subsequently back-transformed using formula cv = exp(a) * C^b, where cv, a and b represent estimates of CV, A and B. Therefore, this model does not fall within the same class as models 1 to 9, although the predictor function is identical to that of model 9. This also has the consequence that regression statistics, like AIC or deviance, are not directly comparable to those of models 1 to 9.

Usage

fit.EP17(x, y, DF, typeY = c("vc", "sd", "cv"), k = 2, ...)

Arguments

x

(numeric) mean concentrations of samples

y

(numeric) variability at 'x' on VC-, SD-, or CV-scale

DF

(numeric) vector of degrees of freedom linked to variabilities 'y' used in derivation of deviance and AIC

typeY

(character) specifying the scale of 'y'-values

k

(numeric) numeric specifying the 'weight' of the equivalent degrees of freedom (edf) part in the AIC formula.

...

additional arguments

Details

The AIC is computed following the implementation of extractAIC.lm in the 'stats' package with the adaption of using 'n = sum(df)' instead of 'n' being the number of residuals. The 'df' come from a precision analysis, thus, there are far more observations used to fit this model than indicated by the number of residuals.

Value

(list) with items "x" and "y" as provided, and "x.out" and "y.out" representing X- and Y-coordiantes of fitted values for plotting

Author(s)

Andre Schuetzenmeister andre.schuetzenmeister@roche.com

Examples


# data from appendix D of CLSI EP17-A2 (pg. 54)
EP17.dat <- data.frame(
 Lot=c(rep("Lot1", 9), rep("Lot2", 9)),
	Mean=c(	0.04, 0.053, 0.08, 0.111, 0.137, 0.164, 0.19, 0.214, 0.245,
			0.041, 0.047, 0.077, 0.106, 0.136, 0.159, 0.182, 0.205, 0.234),
	CV=c(40.2, 29.6, 19.5, 15.1, 10.0, 7.4, 6.0, 7.5, 5.4,
		 44.1, 28.8, 15.1, 17.8, 11.4, 9.2, 8.4, 7.8, 6.2),
 SD=c(0.016, 0.016, 0.016, 0.017, 0.014, 0.012, 0.011, 0.016, 0.013,
		 0.018, 0.014, 0.012, 0.019, 0.016, 0.015, 0.015, 0.016, 0.014),
 DF=rep(1, 18)
)

EP17.dat$VC <- EP17.dat$SD^2

lot1 <- subset(EP17.dat, Lot=="Lot1")
lot2 <- subset(EP17.dat, Lot=="Lot2")

# function fit.EP17 is not exported, use package namesspace in call
fit.lot1 <- VFP:::fit.EP17(x=lot1$Mean, y=lot1$CV, typeY="cv", DF=lot1$DF)


VFP documentation built on Nov. 10, 2022, 5:12 p.m.

Related to fit.EP17 in VFP...