Learn R Programming

NMTox (version 0.1.0)

Isotest: Calculate the test statistics and p-values for testing monotonic trend

Description

This function provides the value of the test statistics, p-values, plot of the null distribution and the observed test statistics, and adjusted p-values according to the method chosen.

Usage

Isotest(data.nm, data.control, id, nano, response, dose, end, end.cat,
  unit, unit.cat, stat=c("E2","Williams","Marcus","M","ModM"), niter,
  method=p.adjust.methods, control.opt=c("same","all"), set.seed, vars)

Value

This function calculates the value for the test statistics, the p-value (and its plot) based on the permutation, the adjusted p-value and the more likely direction of the monotonic trend.

Arguments

data.nm

Data containing the result of toxicity study

data.control

Data of control values

id

Identifier of the experiment

nano

Name of the nanomaterial

response

Response (endpoint value)

dose

Dose or concentration

end

Toxicity endpoint

end.cat

Specific toxicity endpoint of interest

unit

Unit of measurement of the dose

unit.cat

Specific unit of measurement of the dose

stat

Test statistics ("E2" for the global likelihood test, "Williams" for Williams test, "Marcus" for Marcus test, "M" for M test or "ModM" for modified M test)

niter

Number of permutations

method

Method used to adjust for the multiplicity (see p.adjust.methods)

control.opt

Option for the control doses if unit and unit.cat are specified. If only control doses with the same unit of measurement as the non-control ones are included, then specify "same" in the control.opt. If all control doses with any units of measurement are included, then specify "all".

set.seed

Specify seed

vars

Variable(s) used to subset the data

Details

  • This function performs trend testing for each nanomaterial in the dataset (or for each subset of data). The different types of nanomaterials are identified by their names. Therefore, if some control values are named differently (see: geninvitro dataset and the Examples), a separate dataset containing only these values first needs to be created. Controls in the new dataset can be linked to the non-control observations belonging to the same experiment through the identifier of the experiment (the linking is performed inside this function). In this situation, it is necessary to have an indicator that can identify different experiments (such as experiment ID).

  • If all controls in the dataset are named according to the related nanomaterial names, data.control and id do not need to be specified.

  • If doses used in the experiment are all measured in the same unit of measurement, then specify "same" in control.opt.

  • Trend testing can also be performed for subsets of data in each nanomaterial, by specifying the variables used to split the data in vars.

References

Lin D., Pramana, S., Verbeke, T., and Shkedy, Z. (2015). IsoGene: Order-Restricted Inference for Microarray Experiments. R package version 1.0-24. https://CRAN.R-project.org/package=IsoGene

Lin D., Shkedy Z., Yekutieli D., Amaratunga D., and Bijnens, L. (editors). (2012) Modeling Doseresponse Microarray Data in Early Drug Development Experiments Using R. Springer.

Examples

Run this code
# Example 1:
# Create a dataset containing controls (which are named differently)
# from geninvitro dataset:
controldata<-SubsetData(data=geninvitro, x="name", x.cat=c("control", "Control",
             "medium", "medium + BSA", "untreated"))

# Exclude controls (which are named differently) from geninvitro dataset:
invitrodata<-SubsetData(data=geninvitro, x="name", x.cat=c("control", "Control",
             "medium", "medium + BSA", "untreated"), include=FALSE)
#
# Perform test for the monotonic trend in geninvitro, with DNA STRAND BREAKS
# as the endpoint, concentrations measured in "ug/cm2" and control doses
# measured in any units of measurement:
#
Isotest(data.nm=invitrodata, data.control=controldata, id="experimentID",
        nano="name", response="value", dose="concentration", end="endpoint",
        end.cat="DNA STRAND BREAKS", unit="concentration_unit", unit.cat="ug/cm2",
        stat="E2", niter=1000, method="BH", control.opt="all", set.seed=1234)

#' # Example 2:
# Split geninvitro according to the endpoint and unit of the concentration
# and then perform test for the monotonic trend for each subset of data:
#
Isotest(data.nm=invitrodata, data.control=controldata,
        id="experimentID", nano="name", dose="concentration",
        response="value", stat="E2", niter=1000, method="BH", set.seed=1234,
        vars=c("endpoint","concentration_unit"))

Run the code above in your browser using DataLab