required R libraries

library(here)
library(tidyverse)

read all the files

sample_info <- read_tsv(here("supp_data", "botanical_sample_info.tsv"), col_types = cols())
norm_resp <- read_tsv(here("supp_data", "botanical_norm_resp.tsv"), col_types = cols())
analysis_results <- read_tsv(here("supp_data", "botanical_analysis_results.tsv"), col_types = cols())
endpoint_results <- read_tsv(here("supp_data", "botanical_endpoint_results.tsv"), col_types = cols())

sample information

glimpse(sample_info)
## Observations: 90
## Variables: 8
## $ sample_id              <chr> "NCGC00372657-01", "NCGC00372562-01", "...
## $ sample_name            <chr> "Annatto Extract Acid Proof", "Annatto ...
## $ botanical_group        <chr> "Annatto", "Annatto", "Annatto", "Annat...
## $ botanical_form         <chr> "extract", "extract", "extract", "extra...
## $ supplier               <chr> "Radian International", "Sensient", "Se...
## $ sample_lot             <chr> "5512CD", "4208CC", "R441", "98131", "9...
## $ stock_form             <chr> "mg/ml", "mg/ml", "mg/ml", "mg/ml", "mg...
## $ `stock_solution_mg/ml` <dbl> 7.686, 10.000, 10.000, 10.000, 10.000, ...

concentration response data

#conc unit ug/ml
#resp unit is percentage
glimpse(norm_resp)
## Observations: 284,864
## Variables: 5
## $ sample_id        <chr> "NCGC00372558-01", "NCGC00372558-01", "NCGC00...
## $ batch            <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ...
## $ protocol_readout <chr> "mixture-ahr-p1_luc", "mixture-ahr-p1_luc", "...
## $ concs            <dbl> 2.621136e-04, 5.861039e-04, 1.310568e-03, 2.9...
## $ resps            <dbl> 0.64730738, -2.42740268, -2.66115257, -1.7621...

analysis results data

#POD and EC50 unit is ug/ml
glimpse(analysis_results)
## Observations: 11,880
## Variables: 8
## $ sample_id        <chr> "NCGC00372558-01", "NCGC00372559-01", "NCGC00...
## $ protocol_readout <chr> "mixture-ahr-p1_luc", "mixture-ahr-p1_luc", "...
## $ direction        <int> -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -...
## $ threshold        <int> 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 1...
## $ POD              <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N...
## $ EC50             <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N...
## $ Emax             <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
## $ wAUC             <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...

endpoint results data

#POD and EC50 unit is ug/ml
#flag is to indicate presumable assay inteference
glimpse(endpoint_results)
## Observations: 3,150
## Variables: 12
## $ sample_id        <chr> "NCGC00372558-01", "NCGC00372559-01", "NCGC00...
## $ protocol_readout <chr> "mixture-ahr-p1_luc", "mixture-ahr-p1_luc", "...
## $ direction        <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ...
## $ threshold        <int> 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 2...
## $ POD              <dbl> NA, 24.51831, NA, NA, 40.31348, NA, NA, NA, 2...
## $ EC50             <dbl> NA, 30.6212, NA, NA, 30.6212, NA, NA, NA, 30....
## $ Emax             <dbl> 0.00000, 77.69487, 0.00000, 0.00000, 23.03335...
## $ wAUC             <dbl> 0.0000000, 0.5361448, 0.0000000, 0.0000000, 0...
## $ endpoint         <chr> "mixture-ahr-agonist-p1", "mixture-ahr-agonis...
## $ hit              <int> 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, ...
## $ flag             <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N...
## $ note             <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N...

curve data

#only endpoint analysis results were plotted
list.files(here("supp_data", "curves"))
##  [1] "mixture-ahr-p1_curves.pdf"                      
##  [2] "mixture-ar-mda-kb2-luc-agonist-p1_curves.pdf"   
##  [3] "mixture-ar-mda-kb2-luc-antagonist-p1_curves.pdf"
##  [4] "mixture-are-bla-p1_curves.pdf"                  
##  [5] "mixture-aromatase-er-agonist-p1_curves.pdf"     
##  [6] "mixture-aromatase-er-antagonist-p1_curves.pdf"  
##  [7] "mixture-aromatase-er-aromatase-p1_curves.pdf"   
##  [8] "mixture-elg1-luc-agonist-p1_curves.pdf"         
##  [9] "mixture-er-luc-bg1-4e2-agonist-p1_curves.pdf"   
## [10] "mixture-er-luc-bg1-4e2-antagonist-p1_curves.pdf"
## [11] "mixture-hse-bla-p1_curves.pdf"                  
## [12] "mixture-mmp-p1_curves.pdf"                      
## [13] "mixture-p53-bla-p1_curves.pdf"                  
## [14] "mixture-pparg-bla-agonist-p1_curves.pdf"        
## [15] "mixture-pparg-bla-antagonist-p1_curves.pdf"     
## [16] "mixture-rt-viability-hek293-flor-p1_curves.pdf" 
## [17] "mixture-rt-viability-hek293-glo-p1_curves.pdf"  
## [18] "mixture-rt-viability-hepg2-flor-p1_curves.pdf"  
## [19] "mixture-rt-viability-hepg2-glo-p1_curves.pdf"

Please direct questions or suggestions to Jui-Hua Hsieh