knitr::opts_chunk$set(echo = FALSE, warning = FALSE, message = FALSE) library(tcpl)
The ToxCast database flags concentration-response curves that may be unreliable or inconsistent based on several criteria; however, it is still good practice for the toxEval user to examine the concentration-response curves pertinent their data to assure that results are understood and to gain confidence in the underlying data. At times, the user will find that concentration-response curves for particular chemical-endpoints or for an entire endpoint will need to be excluded from analysis. For chemicals with an extremely large EAR value, concentration-response curves should be examined. Two ways to obtain concentration-response curves are described below (the Comptox Dashboard and the tcpl pipeline).
There is a web-based tool, the Comptox Dashboard that allows you to search for a chemical by systematic name, synonym, CAS number, DTXSID, or InChIKey. Since we focus on CAS in the toxEval
inputs, let's explore Atrazine (CAS = 1912-24-9):
knitr::include_graphics("startSearch.png")
Enering the CAS will take you to a page describing properties of the specific chemical. There is a TON of great information there.
knitr::include_graphics("allActive.png")
toxEval
.To get to a specific concentration-response curve:
knitr::include_graphics("getCurve.png")
There is another way to locally produce the concentration-response curves using the tcpl
package. The advantage to this approach is that you can customize the plots and order of plots. The drawback is that you need to download a very large MySQL database and have it running locally.
If the database has been downloaded, and MySQL is up-and-running, the following code would produce a single concentration-response curve. Let's look at Atrazine with the "NVS_ENZ_hPDE4A1" endpoint:
library(tcpl) tcplConf(drvr = "MySQL", user = "my_awesome_username", pass = "my_awesome_password", host = "localhost", db = "database_name") ep <- "NVS_ENZ_hPDE4A1" cas <- "1912-24-9" chem_info <- tcplLoadChem(field = 'casn', val = cas) assay_info <- tcplLoadAeid(fld = "acnm", val = ep) mc5 <- tcplLoadData(lvl = 5, type = "mc", fld = c("aeid","spid"), val = list(assay_info$aeid, chem_info$spid)) plot_out <- tcplPlot(lvl = 5, fld = c("spid","aeid"), # fields to query on val = list(mc5$spid, # sample id's mc5$aeid # assay endpoint id's ), by = "aeid", # parameter to divide files multi = FALSE, # multiple plots per page - output 6 per page if TRUE verbose = TRUE, # output all details if TRUE output = "console") # prefix of the filename plot_out
knitr::include_graphics("atrazineDose.png")
The values passed to the tcplConf
function will depend on how you set up the MySQL database.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.