systemPipeR 2.0.8
Note: the most recent version of this tutorial can be found here.
Note: if you use systemPipeR
in published research, please cite:
Backman, T.W.H and Girke, T. (2016). systemPipeR
: NGS Workflow and Report Generation Environment. BMC Bioinformatics, 17: 388. 10.1186/s12859-016-1241-0.
The intended way of running systemPipeR
workflows is via *.Rmd
files, which
can be executed either line-wise in interactive mode or with a single command from
R or the command-line. This way comprehensive and reproducible analysis reports
can be generated in PDF or HTML format in a fully automated manner by making use
of the highly functional reporting utilities available for R.
Templates for setting up custom project reports are provided as *.Rmd
files
by the helper package systemPipeRdata
and in the vignettes subdirectory of
systemPipeR
. The corresponding HTML of these report templates are available here: systemPipeRNAseq
, systemPipeRIBOseq
, systemPipeChIPseq
and systemPipeVARseq
. To work with *.Rmd
files efficiently, basic knowledge of knitr
and Latex
or R Markdown v2
is required.
## Warning in knitr::include_graphics(system.file("extdata/images",
## "spr_project.png", : It is highly recommended to use relative paths for images.
## You had absolute paths: "/tmp/RtmpbUOpjz/Rinst1ccd542002e128/systemPipeR/
## extdata/images/spr_project.png"
The working environment of the sample data loaded in the previous step contains the following pre-configured directory structure. Directory names are indicated in green. Users can change this structure as needed, but need to adjust the code in their workflows accordingly.
CWL param
and input.yml
files need to be in the same subdirectory.The following parameter files are included in each workflow template:
targets.txt
: initial one provided by user; downstream targets_*.txt
files are generated automatically*.param/cwl
: defines parameter for input/output file operations, e.g.:
hisat2-se/hisat2-mapping-se.cwl
hisat2-se/hisat2-mapping-se.yml
*_run.sh
: optional bash scripts.batchtools.conf.R
: defines the type of scheduler for batchtools
pointing to template file of cluster, and located in user’s home directory*.tmpl
: specifies parameters of scheduler used by a system, e.g. Torque, SGE, Slurm, etc.This workflow demonstrates how to use various utilities for building and running automated end-to-end analysis workflows for RNA-Seq
data.
The full workflow can be found here: HTML, .Rmd, and .R.
Load the RNA-Seq
sample workflow into your current working directory.
library(systemPipeRdata)
genWorkenvir(workflow = "rnaseq")
setwd("rnaseq")
This template provides some common steps for a RNAseq
workflow. One can add, remove, modify
workflow steps by operating on the sal
object.
sal <- SPRproject()
sal <- importWF(sal, file_path = "systemPipeRNAseq.Rmd", verbose = FALSE)
Workflow includes following steps:
HISAT2
(or any other RNA-Seq aligner)sal <- runWF(sal)
plotWF(sal, rstudio = TRUE)
sal <- renderReport(sal)
sal <- renderLogs(sal)
This workflow demonstrates how to use various utilities for building and running automated end-to-end analysis workflows for ChIP-Seq
data.
The full workflow can be found here: HTML, .Rmd, and .R.
Load the ChIP-Seq
sample workflow into your current working directory.
library(systemPipeRdata)
genWorkenvir(workflow = "chipseq")
setwd("chipseq")
Workflow includes following steps:
Bowtie2
or rsubread
MACS2
, BayesPeak
This template provides some common steps for a ChIPseq
workflow. One can add, remove, modify
workflow steps by operating on the sal
object.
sal <- SPRproject()
sal <- importWF(sal, file_path = "systemPipeChIPseq.Rmd", verbose = FALSE)
sal <- runWF(sal)
plotWF(sal, rstudio = TRUE)
sal <- renderReport(sal)
sal <- renderLogs(sal)
This workflow demonstrates how to use various utilities for building and running automated end-to-end analysis workflows for VAR-Seq
data.
The full workflow can be found here: HTML, .Rmd, and .R.
Load the VAR-Seq
sample workflow into your current working directory.
library(systemPipeRdata)
genWorkenvir(workflow = "varseq")
setwd("varseq")
Workflow includes following steps:
gsnap
, bwa
VariantTools
, GATK
, BCFtools
VariantTools
and VariantAnnotation
VariantAnnotation
This template provides some common steps for a VARseq
workflow. One can add, remove, modify
workflow steps by operating on the sal
object.
sal <- SPRproject()
sal <- importWF(sal, file_path = "systemPipeVARseq.Rmd", verbose = FALSE)
sal <- runWF(sal)
plotWF(sal, rstudio = TRUE)
sal <- renderReport(sal)
sal <- renderLogs(sal)
This workflow demonstrates how to use various utilities for building and running automated end-to-end analysis workflows for RIBO-Seq
data.
The full workflow can be found here: HTML, .Rmd, and .R.
Load the RIBO-Seq
sample workflow into your current working directory.
library(systemPipeRdata)
genWorkenvir(workflow = "riboseq")
setwd("riboseq")
Workflow includes following steps:
HISAT2
(or any other RNA-Seq aligner)This template provides some common steps for a RIBOseq
workflow. One can add, remove, modify
workflow steps by operating on the sal
object.
sal <- SPRproject()
sal <- importWF(sal, file_path = "systemPipeRIBOseq.Rmd", verbose = FALSE)
sal <- runWF(sal)
plotWF(sal, rstudio = TRUE)
sal <- renderReport(sal)
sal <- renderLogs(sal)
sessionInfo()
## R version 4.1.3 (2022-03-10)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 20.04.4 LTS
##
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.14-bioc/R/lib/libRblas.so
## LAPACK: /home/biocbuild/bbs-3.14-bioc/R/lib/libRlapack.so
##
## locale:
## [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=en_GB LC_COLLATE=C
## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
##
## attached base packages:
## [1] stats4 stats graphics grDevices utils datasets methods
## [8] base
##
## other attached packages:
## [1] magrittr_2.0.3 systemPipeR_2.0.8
## [3] ShortRead_1.52.0 GenomicAlignments_1.30.0
## [5] SummarizedExperiment_1.24.0 Biobase_2.54.0
## [7] MatrixGenerics_1.6.0 matrixStats_0.61.0
## [9] BiocParallel_1.28.3 Rsamtools_2.10.0
## [11] Biostrings_2.62.0 XVector_0.34.0
## [13] GenomicRanges_1.46.1 GenomeInfoDb_1.30.1
## [15] IRanges_2.28.0 S4Vectors_0.32.4
## [17] BiocGenerics_0.40.0 BiocStyle_2.22.0
##
## loaded via a namespace (and not attached):
## [1] bitops_1.0-7 webshot_0.5.2 RColorBrewer_1.1-3
## [4] httr_1.4.2 tools_4.1.3 bslib_0.3.1
## [7] utf8_1.2.2 R6_2.5.1 DT_0.22
## [10] DBI_1.1.2 colorspace_2.0-3 tidyselect_1.1.2
## [13] compiler_4.1.3 cli_3.2.0 rvest_1.0.2
## [16] formatR_1.12 xml2_1.3.3 DelayedArray_0.20.0
## [19] labeling_0.4.2 bookdown_0.25 sass_0.4.1
## [22] scales_1.1.1 systemPipeRdata_1.22.2 systemfonts_1.0.4
## [25] stringr_1.4.0 digest_0.6.29 rmarkdown_2.13
## [28] svglite_2.1.0 jpeg_0.1-9 pkgconfig_2.0.3
## [31] htmltools_0.5.2 fastmap_1.1.0 highr_0.9
## [34] htmlwidgets_1.5.4 rlang_1.0.2 rstudioapi_0.13
## [37] jquerylib_0.1.4 generics_0.1.2 farver_2.1.0
## [40] hwriter_1.3.2.1 jsonlite_1.8.0 crosstalk_1.2.0
## [43] dplyr_1.0.8 RCurl_1.98-1.6 kableExtra_1.3.4
## [46] GenomeInfoDbData_1.2.7 Matrix_1.4-1 Rcpp_1.0.8.3
## [49] munsell_0.5.0 fansi_1.0.3 lifecycle_1.0.1
## [52] stringi_1.7.6 yaml_2.3.5 zlibbioc_1.40.0
## [55] grid_4.1.3 parallel_4.1.3 crayon_1.5.1
## [58] lattice_0.20-45 magick_2.7.3 knitr_1.38
## [61] pillar_1.7.0 codetools_0.2-18 glue_1.6.2
## [64] evaluate_0.15 latticeExtra_0.6-29 remotes_2.4.2
## [67] BiocManager_1.30.16 png_0.1-7 vctrs_0.4.0
## [70] gtable_0.3.0 purrr_0.3.4 assertthat_0.2.1
## [73] ggplot2_3.3.5 xfun_0.30 viridisLite_0.4.0
## [76] tibble_3.1.6 ellipsis_0.3.2
This project is funded by NSF award ABI-1661152.