This vignette describes the philosophy behind the infrastructure of TIMA.
Our main goals were flexibility and reproducibility.
To ensure flexibility, we tried to split the process in as much tiny parts as needed. So you can decide whether to skip an optional part, add your own processing, etc. We tried to cover most use cases, but of course they are not exhaustive. If you feel like something useful to other users is missing, please fill an issue.
After some time using TIMA, you will probably wonder: “What was the parameters I used to generate this file?” … Or a collaborator might ask you to share your data and parameters. Writing them down each time might be time-consuming and not really in line with modern computational approaches. Therefore, we chose to implement all parameters of all steps (almost…) as YAML files. They are human-readable and can be used in batches. If you do not like YAML, parameters of each step can also be given as command line arguments. They will then be saved as YAML you will be able to share.
To ensure optimal reproducibility and avoiding re-computing endlessly steps that did not change, we decided to build a {targets} pipeline. Each step of the whole pipeline will be described next.
Each step is detailed in the related vignettes.
All coming steps admit you already installed tima
:
install.packages(
"tima",
repos = c(
"https://taxonomicallyinformedannotation.r-universe.dev",
"https://bioc.r-universe.dev",
"https://cloud.r-project.org"
)
)
tima::install()
tima::get_example_files()
We now recommend you to read the first vignette.
This package uses {furrr}
from the futureverse. If you think you
could benefit from parallelization, have a look at https://future.futureverse.org/reference/plan.html to
see how to set it up.
If you do not feel like going through all the steps, then just do 🚀:
If you do not even need a GUI ☠️:
In case you just want to change some small parameters between jobs, a convenience function is available:
tima::change_params_small(
fil_pat = "myExamplePattern",
fil_fea_raw = "myExampleDir/myExampleFeatures.csv",
fil_met_raw = "myExampleDir2SomeWhereElse/myOptionalMetadata.tsv",
fil_sir_raw = "myExampleDir3/myAwesomeSiriusProject.zip",
fil_spe_raw = "myBeautifulSpectra.mgf",
ms_pol = "pos",
org_tax = "Gentiana lutea",
hig_con = TRUE,
summarise = FALSE
)