Model selection by comparison of different models using the following criteria: the log likelihood value, Akaike's information criterion (AIC), the estimated residual standard error or the p-value from a lack-of-fit test.
fctList: a list of dose-response functions to be compared.
nested: logical. TRUE results in F tests between adjacent models (in 'fctList'). Only sensible for nested models.
sorted: character string determining according to which criterion the model fits are ranked.
linreg: logical indicating whether or not additionally polynomial regression models (linear, quadratic, and cubic models) should be fitted (they could be useful for a kind of informal lack-of-test consideration for the models specified, capturing unexpected departures).
icfct: function for supplying the information criterion to be used. AIC and BIC are two options.
Details
For Akaike's information criterion and the residual standard error: the smaller the better and for lack-of-fit test (against a one-way ANOVA model): the larger (the p-value) the better. Note that the residual standard error is only available for continuous dose-response data.
Log likelihood values cannot be used for comparison unless the models are nested.
Returns
A matrix with one row for each model and one column for each criterion.
Author(s)
Christian Ritz
Examples
### Example with continuous/quantitative data## Fitting initial four-parameter log-logistic modelryegrass.m1 <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())## Model selectionmselect(ryegrass.m1, list(LL.3(), LL.5(), W1.3(), W1.4(), W2.4(), baro5()))## Model selection including linear, quadratic, and cubic regression modelsmselect(ryegrass.m1, list(LL.3(), LL.5(), W1.3(), W1.4(), W2.4(), baro5()), linreg =TRUE)## Comparing nested modelsmselect(ryegrass.m1, list(LL.5()), nested =TRUE)### Example with quantal data## Fitting initial two-parameter log-logistic modelearthworms.m1 <- drm(number/total~dose, weights=total,data = earthworms, fct = LL.2(), type ="binomial")## Comparing 4 modelsmselect(earthworms.m1, list(W1.2(), W2.2(), LL.3()))