Learn R Programming

mixtox (version 1.4.0)

caPred: Mixture Toxicity Prediction Based on Concentration Addition

Description

Predicting mixture toxicity based on individual concentration-response information fitted only based on the following six models: Hill, Weibull, Logit, BCW, BCL, and GL. Three optional mixture design methods are provided:(1)arbitrary concentration ratio (acr), users can set an arbitary proportion for each component in a mixture; (2)equal effect concentration ratio (eecr); (3) uniform design concentration ratio (udcr).

Usage

caPred(model, param, mixType = "eecr", effv, effPoints, sav = FALSE)

Arguments

model

vector of models: Hill, Weibull, Logit, BCW, BCL, and GL

param

numeric matrix of fitting coefficients with row names (model selected) and column names (Alpha, Beta, and Gamma). For models with only two parameters (i.e., Hill, Weibull, and Logit), Gamma can be set to zero or any other numeric value.

mixType

experimental design of the mixture. acr: arbitrary concentration ratio; eecr: equal effect concentration ratio; udcr: uniform design concentration ratio.

effv

numeric vector with single or multiple effects (0 ~ 1).

effPoints

numeric vector [0 ~ 1] of effects to predict effect concentrations.

sav

TRUE: save output to a default file; FALSE: output will not be saved; a custom file directory: save output to the custom file directory.

Value

ca

a series of effect concentrations predicted by CA at effPoints

e

a series of effects (effPoints) associated with the effect concentrations in ca

pct

the proportion of every component in a mixture

uniTab

the uniform design table used to construct the mixture when mixType is 'udcr'

Details

Concentration addition (CA) is designed for mixtures of chemicals that have similar mechanisms of action. For a well-defined mixture (e.g., a mixture of n components), CA is expressed mathematically as: $$\sum\limits_{i = 1}^n {\frac{{{c_i}}}{{EC{x_i}}}} = 1$$ where \(EC{x_i}\) is the effect concentration of the \(i^{th}\) compound that causes x% effect when applied individually at \({c_i}\). The \({c_i}\) can be computed from the following equation: $${c_i} = {p_i} \cdot {c_{mix}} = {p_i} \cdot E{C_{x,mix}}$$ where \(p_i\) is the proportion of \(i^{th}\) component in the mixture, \(c_{mix}\) the mixture concentration and \(E{C_{x,mix}}\) the concentration of the mixture at a specific effect x%. The prediction of combined effects of mixture-components based on CA can then be expressed as: $$E{C_{x,mix}} = {\left( {\sum\limits_{i = 1}^n {\frac{{{p_i}}}{{E{C_{x,i}}}}}} \right)^{ - 1}}$$

References

Liang, Yi-zeng, Kai-tai Fang, and Qing-song Xu. 2001. Uniform Design and Its Applications in Chemistry and Chemical Engineering. Chemometrics and Intelligent Laboratory Systems 58(1):43-57. Backhaus, T., Faust, M., 2012. Predictive environmental risk assessment of chemical mixtures: A conceptual framework. Environmental Science and Technology. 46, 2564-2573.

See Also

iaPred

Examples

Run this code
# NOT RUN {
## example 1
# using CA to predict the toxicity of mixture designed by eecr at the
# effect concentration of EC05 and EC50
# eecr mixture design is based on seven antibiotics(factors).
model <- antibiotox$sgl$model
param <- antibiotox$sgl$param
caPred(model, param, mixType = "eecr", effv = c(0.05, 0.5))

## example 2
# using CA to predict the mixtures designed by udcr
# the udcr mixture design is based on four heavy metals and four ionic liquids (eight factors).
# five levels (EC05, EC10, EC20, EC30, and EC50 ) are allocated in the uniform table using the
# pseudo-level technique (Liang et al., 2001)
model <- cytotox$sgl$model
param <- cytotox$sgl$param
effv <- c(0.05, 0.05, 0.10, 0.10, 0.20, 0.20, 0.30, 0.30, 0.50, 0.50)
caPred(model, param, mixType = "udcr", effv)

## example 3
# using CA to predict the mixtures designed by acr
# the udcr mixture design is based on five antibiotics (five factors).
# the every component in the mixture shares exactly the same ratio (0.20) 
model <- antibiotox$sgl$model[1 : 5]
param <- antibiotox$sgl$param[1 : 5, ]
effv <- c(0.2, 0.2, 0.2, 0.2, 0.2)
caPred(model, param, mixType = "acr", effv)
# }

Run the code above in your browser using DataLab