This vignette describes several use cases for retrieving substance information from zinc15.docking.org using the Zr R package.

To follow along, make sure Zr package is installed

install.packages("devtools")
devtools::install_github("MaomLab/Zr")

And familiarize yourself with with http://zinc15.docking.org

Searching for Substance info

Tanaka et al., (2015, 10.1371/journal.pone.0135657) observe uremic solutes that accumulate when the kidneys fail. In Supplementary table 2, they list the 120 uremic compounds they observe. Here are the ones with HMDB Ids:

uremic_solutes <- c("HMDB00001", "HMDB00017", "HMDB00020")

To retrieve information about these compounds we can use Zr package

## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
s_info <- search_for_substances(uremic_solutes, verbose=T)
## making request:
##   url:  http://zinc15.docking.org/substances/search?count=all 
## making request:
##   url:  http://zinc15.docking.org/substances/search?count=all 
## making request:
##   url:  http://zinc15.docking.org/substances/search?count=all
s_info %>% str
## 'data.frame':    3 obs. of  11 variables:
##  $ search_term     : chr  "HMDB00001" "HMDB00017" "HMDB00020"
##  $ zinc_id         : chr  "ZINC000002563973" "ZINC000000120316" "ZINC000000213065"
##  $ preferred_name  : chr  "4-methyl-histidine" "4-pyridoxate" "4-hydroxyphenylacetate"
##  $ smiles          : chr  "Cn1cnc(C[C@H](N)C(=O)O)c1" "Cc1ncc(CO)c(C(=O)O)c1O" "O=C(O)Cc1ccc(O)cc1"
##  $ purchasability  : chr  "In-Stock" "In-Stock" "In-Stock"
##  $ features        : chr  "set(['in-man', 'endogenous'])" "set(['in-man', 'endogenous'])" "set(['world', 'endogenous'])"
##  $ aggregator      : logi  FALSE FALSE FALSE
##  $ drug_code       : num  213 213 211
##  $ drug_level      : chr  "in-man" "in-man" "world"
##  $ biological_code : num  203 203 203
##  $ biological_level: chr  "endogenous" "endogenous" "endogenous"