Quick start to using to jaffelab

Basics

Install jaffelab

R is an open-source statistical environment which can be easily modified to enhance its functionality via packages. jaffelab is a R package available via GitHub. R can be installed on any operating system from CRAN after which you can install jaffelab by using the following commands in your R session:

if (!requireNamespace("remotes", quietly = TRUE)) {
    install.packages("remotes")
}

remotes::install_github("LieberInstitute/jaffelab")

Required knowledge

If you are asking yourself the question “Where do I start using Bioconductor?” you might be interested in this blog post.

Asking for help

As package developers, we try to explain clearly how to use our packages and in which order to use the functions. But R and Bioconductor have a steep learning curve so it is critical to learn where to ask for help. The blog post quoted above mentions some but we would like to highlight the Bioconductor support site as the main resource for getting help for Bioconductor packages. For jaffelab please post issues in GitHub. However, please note that if you want to receive help you should adhere to the posting guidelines. It is particularly critical that you provide a small reproducible example and your session information so package developers can track down the source of the error.

Citing jaffelab

We hope that jaffelab will be useful for your research. Please use the following information to cite the package and the overall approach. Thank you!

## Citation info
citation("jaffelab")
## To cite package 'jaffelab' in publications use:
## 
##   Collado-Torres L, Jaffe AE, Burke EE (2024). _jaffelab: Commonly used
##   functions by the Jaffe lab_. R package version 0.99.34,
##   <https://github.com/LieberInstitute/jaffelab>.
## 
## A BibTeX entry for LaTeX users is
## 
##   @Manual{,
##     title = {jaffelab: Commonly used functions by the Jaffe lab},
##     author = {Leonardo Collado-Torres and Andrew E. Jaffe and Emily E. Burke},
##     year = {2024},
##     note = {R package version 0.99.34},
##     url = {https://github.com/LieberInstitute/jaffelab},
##   }

Overview

jaffelab is based on many other packages and in particular in those that have implemented the infrastructure needed for dealing with RNA-seq data. We use it extensively at the Andrew Jaffe Data Science team from the Lieber Institute for Brain Development (LIBD), including in publications such as BrainSEQ Phase II (DOI 10.1016/j.neuron.2019.05.013). This R package started with a collection of functions Andrew Jaffe used frequently, some authored by Rafael Irizarry and Jeff Leek. It now includes other helper functions that are more specific to our work at LIBD such as agePlotter(). Please check the help files of each function to get an idea on what they do.

Reproducibility

The jaffelab package (Collado-Torres, Jaffe, and Burke, 2024) was made possible thanks to:

Code for creating the vignette

## Create the vignette
library("rmarkdown")
system.time(render("jaffelab-quickstart.Rmd", "BiocStyle::html_document"))

## Extract the R code
library("knitr")
knit("jaffelab-quickstart.Rmd", tangle = TRUE)
## Clean up
file.remove("quickstartRef.bib")
## [1] TRUE

Date the vignette was generated.

## [1] "2024-03-27 13:29:08 UTC"

Wallclock time spent generating the vignette.

## Time difference of 0.871 secs

R session information.

## ─ Session info ───────────────────────────────────────────────────────────────────────────────────────────────────────
##  setting  value
##  version  R version 4.3.2 (2023-10-31)
##  os       Ubuntu 22.04.3 LTS
##  system   x86_64, linux-gnu
##  ui       X11
##  language en
##  collate  en_US.UTF-8
##  ctype    en_US.UTF-8
##  tz       UTC
##  date     2024-03-27
##  pandoc   3.1.1 @ /usr/local/bin/ (via rmarkdown)
## 
## ─ Packages ───────────────────────────────────────────────────────────────────────────────────────────────────────────
##  package       * version date (UTC) lib source
##  backports       1.4.1   2021-12-13 [1] RSPM (R 4.3.0)
##  bibtex          0.5.1   2023-01-26 [1] RSPM (R 4.3.0)
##  BiocManager     1.30.22 2023-08-08 [2] CRAN (R 4.3.2)
##  BiocStyle     * 2.30.0  2023-10-24 [1] Bioconductor
##  bookdown        0.38    2024-03-04 [1] RSPM (R 4.3.0)
##  bslib           0.6.2   2024-03-22 [2] RSPM (R 4.3.0)
##  cachem          1.0.8   2023-05-01 [2] RSPM (R 4.3.0)
##  cli             3.6.2   2023-12-11 [2] RSPM (R 4.3.0)
##  desc            1.4.3   2023-12-10 [2] RSPM (R 4.3.0)
##  digest          0.6.35  2024-03-11 [2] RSPM (R 4.3.0)
##  evaluate        0.23    2023-11-01 [2] RSPM (R 4.3.0)
##  fastmap         1.1.1   2023-02-24 [2] RSPM (R 4.3.0)
##  fs              1.6.3   2023-07-20 [2] RSPM (R 4.3.0)
##  generics        0.1.3   2022-07-05 [1] RSPM (R 4.3.0)
##  glue            1.7.0   2024-01-09 [2] RSPM (R 4.3.0)
##  htmltools       0.5.8   2024-03-25 [2] RSPM (R 4.3.0)
##  httr            1.4.7   2023-08-15 [2] RSPM (R 4.3.0)
##  jquerylib       0.1.4   2021-04-26 [2] RSPM (R 4.3.0)
##  jsonlite        1.8.8   2023-12-04 [2] RSPM (R 4.3.0)
##  knitcitations * 1.0.12  2021-01-10 [1] RSPM (R 4.3.0)
##  knitr           1.45    2023-10-30 [2] RSPM (R 4.3.0)
##  lifecycle       1.0.4   2023-11-07 [2] RSPM (R 4.3.0)
##  lubridate       1.9.3   2023-09-27 [1] RSPM (R 4.3.0)
##  magrittr        2.0.3   2022-03-30 [2] RSPM (R 4.3.0)
##  memoise         2.0.1   2021-11-26 [2] RSPM (R 4.3.0)
##  pkgdown         2.0.7   2022-12-14 [2] RSPM (R 4.3.0)
##  plyr            1.8.9   2023-10-02 [1] RSPM (R 4.3.0)
##  purrr           1.0.2   2023-08-10 [2] RSPM (R 4.3.0)
##  R6              2.5.1   2021-08-19 [2] RSPM (R 4.3.0)
##  ragg            1.3.0   2024-03-13 [2] RSPM (R 4.3.0)
##  Rcpp            1.0.12  2024-01-09 [2] RSPM (R 4.3.0)
##  RefManageR      1.4.0   2022-09-30 [1] RSPM (R 4.3.0)
##  rlang           1.1.3   2024-01-10 [2] RSPM (R 4.3.0)
##  rmarkdown       2.26    2024-03-05 [2] RSPM (R 4.3.0)
##  sass            0.4.9   2024-03-15 [2] RSPM (R 4.3.0)
##  sessioninfo   * 1.2.2   2021-12-06 [2] RSPM (R 4.3.0)
##  stringi         1.8.3   2023-12-11 [2] RSPM (R 4.3.0)
##  stringr         1.5.1   2023-11-14 [2] RSPM (R 4.3.0)
##  systemfonts     1.0.6   2024-03-07 [2] RSPM (R 4.3.0)
##  textshaping     0.3.7   2023-10-09 [2] RSPM (R 4.3.0)
##  timechange      0.3.0   2024-01-18 [1] RSPM (R 4.3.0)
##  vctrs           0.6.5   2023-12-01 [2] RSPM (R 4.3.0)
##  xfun            0.43    2024-03-25 [2] RSPM (R 4.3.0)
##  xml2            1.3.6   2023-12-04 [2] RSPM (R 4.3.0)
##  yaml            2.3.8   2023-12-11 [2] RSPM (R 4.3.0)
## 
##  [1] /__w/_temp/Library
##  [2] /usr/local/lib/R/site-library
##  [3] /usr/local/lib/R/library
## 
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Bibliography

This vignette was generated using BiocStyle (Oleś, 2023) with knitr (Xie, 2014) and rmarkdown (Allaire, Xie, Dervieux, McPherson et al., 2024) running behind the scenes.

Citations made with knitcitations (Boettiger, 2021).

[1] J. Allaire, Y. Xie, C. Dervieux, J. McPherson, et al. rmarkdown: Dynamic Documents for R. R package version 2.26. 2024. https://github.com/rstudio/rmarkdown.

[2] C. Boettiger. knitcitations: Citations for ‘Knitr’ Markdown Files. R package version 1.0.12. 2021. https://github.com/cboettig/knitcitations.

[3] L. Collado-Torres, A. E. Jaffe, and E. E. Burke. jaffelab: Commonly used functions by the Jaffe lab. R package version 0.99.34. 2024. https://github.com/LieberInstitute/jaffelab.

[4] G. Csárdi, J. Hester, H. Wickham, W. Chang, et al. remotes: R Package Installation from Remote Repositories, Including ‘GitHub’. R package version 2.5.0, https://github.com/r-lib/remotes#readme. 2024. https://remotes.r-lib.org.

[5] L. D’Agostino McGowan and J. Bryan. googledrive: An Interface to Google Drive. R package version 2.1.1, https://github.com/tidyverse/googledrive. 2023. https://googledrive.tidyverse.org.

[6] R. A. Irizarry and M. I. Love. rafalib: Convenience Functions for Routine Data Exploration. R package version 1.0.0. 2015.

[7] M. Lawrence, W. Huber, H. Pagès, P. Aboyoun, et al. “Software for Computing and Annotating Genomic Ranges”. In: PLoS Computational Biology 9 (8 2013). DOI: 10.1371/journal.pcbi.1003118. http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1003118}.

[8] M. Lawrence, W. Huber, H. Pagès, P. Aboyoun, et al. “Software for Computing and Annotating Genomic Ranges”. In: PLoS Computational Biology 9 (8 2013). DOI: 10.1371/journal.pcbi.1003118. http://www.ploscompbiol.org/article/info%3Adoi%2F10.1371%2Fjournal.pcbi.1003118}.

[9] E. Neuwirth. RColorBrewer: ColorBrewer Palettes. R package version 1.1-3. 2022.

[10] A. Oleś. BiocStyle: Standard styles for vignettes and other Bioconductor documents. R package version 2.30.0. 2023. DOI: 10.18129/B9.bioc.BiocStyle. https://bioconductor.org/packages/BiocStyle.

[11] R Core Team. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing. Vienna, Austria, 2023. https://www.R-project.org/.

[12] R Core Team. R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing. Vienna, Austria, 2023. https://www.R-project.org/.

[13] M. E. Ritchie, B. Phipson, D. Wu, Y. Hu, et al. “limma powers differential expression analyses for RNA-sequencing and microarray studies”. In: Nucleic Acids Research 43.7 (2015), p. e47. DOI: 10.1093/nar/gkv007.

[14] H. Wickham. “testthat: Get Started with Testing”. In: The R Journal 3 (2011), pp. 5-10. https://journal.r-project.org/archive/2011-1/RJournal_2011-1_Wickham.pdf.

[15] H. Wickham, W. Chang, R. Flight, K. Müller, et al. sessioninfo: R Session Information. R package version 1.2.2, https://r-lib.github.io/sessioninfo/. 2021. https://github.com/r-lib/sessioninfo#readme.

[16] Y. Xie. “knitr: A Comprehensive Tool for Reproducible Research in R”. In: Implementing Reproducible Computational Research. Ed. by V. Stodden, F. Leisch and R. D. Peng. ISBN 978-1466561595. Chapman and Hall/CRC, 2014.