Overview

Here you can find the files for the January 2025 introduction to R, RStudio and RNA-sequencing (RNA-seq) course for LCG-UNAM at CCG-UNAM (January 28-31, 2025). The rest of the chapters will be in Spanish.

Instructor:

Teach assistants:

Guest presenters:

Course Coordinators:

  • Heladia Salgado
  • Julio Collado Vides

Download the materials for this course with usethis::use_course('lcolladotor/rnaseq_LCG-UNAM_2025') or view online at lcolladotor.github.io/rnaseq_LCG-UNAM_2025.

Code of Conduct

We’ll follow the CDSB code of conduct comunidadbioinfo.github.io/codigo-de-conducta/ as well as version 1.3.0 of the Bioconductor code of conduct bioconductor.github.io/bioc_coc_multilingual/.

For reporting any violations of the code of conduct, report them to the Instructor and/or Course Coordinators.

Course Schedule

Local times in Cuernavaca, Mexico

  • Tuesday January 28:
    • 9-11 am: introduction to R, RStudio, usethis and here
    • 12-2 pm: introduction to GitHub Copilot with RStudio, RStudio projects, and connecting RStudio projects to GitHub
  • Wednesday January 29:
    • 9-11 am: introduction to Bioconductor
    • 12-2 pm: expression data R/Bioconductor objects and visualization: SummarizedExperiment and iSEE
  • Thursday January 30:
  • Friday January 31:
    • 9-11 am: exploring statistical models with ExploreModelMatrix
    • 12-2 pm: differential expression analysis with limma
        • review
        • R/Bioconductor-powered Team Data Science overview + open discussion (career paths, networking, etc)
      • 2025 LIBD summer internship program: application closes ?? (previously early March).

Course Prerequisites

Install R 4.4.x from CRAN then install the following R packages:

## For installing Bioconductor packages
if (!requireNamespace("BiocManager", quietly = TRUE)) {
    install.packages("BiocManager")
}

## Install required packages
BiocManager::install(
    c(
        "usethis", ## Utilities
        "here",
        "biocthis",
        "lobstr",
        "postcards",
        "sessioninfo",
        "SummarizedExperiment", ## Main containers / vis
        "iSEE",
        "edgeR", ## RNA-seq
        "ExploreModelMatrix",
        "limma",
        "recount3",
        "pheatmap", ## Visualization
        "ggplot2",
        "patchwork",
        "RColorBrewer",
        "ComplexHeatmap",
        "spatialLIBD" ## Advanced
    )
)

You will also need to install RStudio version RStudio 2024.12.0 or newer.

Course Evaluation

  • Participation
    • (main evidence) written and/or verbal participation during class
      • This is tracked by day by the TA. Each day counts as a category.
    • (optional, strongly encouraged for your own career) Community building: CDSB Slack (introduce yourself), Bluesky, GitHub, etc. These are tracked by the TA: please let the TA know of your participations.
      • GitHub issues on the course repository
      • CDSB Slack #bienvenida channel
      • Bioconductor Slack #introductions channel
      • Bluesky posts related to the course
    • Grading:
      • 0%: no participation
      • 25%: participation in only 1 out of 8 categories (4 days, 4 public participation categories)
      • 50%: participation in 2 out of 8 categories
      • 75%: participation in 3 out of 8 categories
      • 100%: participation in 4 or more categories
  • Public work
    • (main evidence) Taking notes on your GitHub class notes repositories
    • (optional) Deploy an iSEE shiny app on shinyapps.io
    • (advanced and optional) R package with notes following usethis::create_package() + biocthis::use_bioc_pkg_templates().
  • Final project
    • (main evidence) code in a public GitHub repository (different from the notes one) following the structure from LieberInstitute/template_project
    • (optional) a rendered Rmd file (RPubs, GitHub, etc) on a public URL
    • (optional advanced) Copy this repository, remove all the Rmds except the index.Rmd and edit accordingly. GitHub Actions will then help you render it. You’ll need to fetch the gh-pages branch and at least make one commit for the HTML to be available such as this commit. You might also run into this GitHub default permission setting that you’ll need to change.

The final grade will be a weighted average from the evaluation by the TA (20%), your public work (40%) and your final project (40%).

Projects, public work and notes are due at 9 am US Eastern on Monday February 10th, though we recommend doing any work related to this course by Friday February 7th.

R session information

Details on the R version used for making this book. The source code is available at lcolladotor/rnaseq_LCG-UNAM_2025.

## Load the package at the top of your script
library("sessioninfo")

##  Utilities
library("BiocStyle")
library("biocthis")
library("here")
library("lobstr")
library("postcards")
library("usethis")
library("sessioninfo")

## Main containers / vis
library("SummarizedExperiment")
library("iSEE")

## RNA-seq
library("edgeR")
library("ExploreModelMatrix")
library("limma")
library("recount3")

## Visualization
library("ComplexHeatmap")
library("ggplot2")
library("patchwork")
library("pheatmap")
library("RColorBrewer")

## Advanced
library("spatialLIBD")
## Reproducibility information
options(width = 120)
session_info()
## ─ Session info ───────────────────────────────────────────────────────────────────────────────────────────────────────
##  setting  value
##  version  R version 4.4.2 (2024-10-31)
##  os       Ubuntu 24.04.1 LTS
##  system   x86_64, linux-gnu
##  ui       X11
##  language (EN)
##  collate  en_US.UTF-8
##  ctype    en_US.UTF-8
##  tz       UTC
##  date     2025-02-04
##  pandoc   3.6 @ /usr/bin/ (via rmarkdown)
## 
## ─ Packages ───────────────────────────────────────────────────────────────────────────────────────────────────────────
##  package              * version   date (UTC) lib source
##  abind                  1.4-8     2024-09-12 [1] RSPM (R 4.4.0)
##  AnnotationDbi          1.68.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  AnnotationHub          3.14.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  attempt                0.3.1     2020-05-03 [1] RSPM (R 4.4.0)
##  beachmat               2.22.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  beeswarm               0.4.0     2021-06-01 [1] RSPM (R 4.4.0)
##  benchmarkme            1.0.8     2022-06-12 [1] RSPM (R 4.4.0)
##  benchmarkmeData        1.0.4     2020-04-23 [1] RSPM (R 4.4.0)
##  Biobase              * 2.66.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocFileCache          2.14.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocGenerics         * 0.52.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocIO                 1.16.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocManager            1.30.25   2024-08-28 [2] CRAN (R 4.4.2)
##  BiocNeighbors          2.0.1     2024-11-28 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocParallel           1.40.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocSingular           1.22.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocStyle            * 2.34.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  biocthis             * 1.16.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  BiocVersion            3.20.0    2024-10-21 [2] Bioconductor 3.20 (R 4.4.2)
##  Biostrings             2.74.1    2024-12-16 [1] Bioconductor 3.20 (R 4.4.2)
##  bit                    4.5.0.1   2024-12-03 [1] RSPM (R 4.4.0)
##  bit64                  4.6.0-1   2025-01-16 [1] RSPM (R 4.4.0)
##  bitops                 1.0-9     2024-10-03 [1] RSPM (R 4.4.0)
##  blob                   1.2.4     2023-03-17 [1] RSPM (R 4.4.0)
##  bookdown               0.42      2025-01-07 [1] RSPM (R 4.4.0)
##  bslib                  0.9.0     2025-01-30 [2] RSPM (R 4.4.0)
##  cachem                 1.1.0     2024-05-16 [2] RSPM (R 4.4.0)
##  circlize               0.4.16    2024-02-20 [1] RSPM (R 4.4.0)
##  cli                    3.6.3     2024-06-21 [2] RSPM (R 4.4.0)
##  clue                   0.3-66    2024-11-13 [1] RSPM (R 4.4.0)
##  cluster                2.1.8     2024-12-11 [3] RSPM (R 4.4.0)
##  codetools              0.2-20    2024-03-31 [3] CRAN (R 4.4.2)
##  colorspace             2.1-1     2024-07-26 [1] RSPM (R 4.4.0)
##  colourpicker           1.3.0     2023-08-21 [1] RSPM (R 4.4.0)
##  ComplexHeatmap       * 2.22.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  config                 0.3.2     2023-08-30 [1] RSPM (R 4.4.0)
##  cowplot                1.1.3     2024-01-22 [1] RSPM (R 4.4.0)
##  crayon                 1.5.3     2024-06-20 [2] RSPM (R 4.4.0)
##  curl                   6.2.0     2025-01-23 [2] RSPM (R 4.4.0)
##  data.table             1.16.4    2024-12-06 [1] RSPM (R 4.4.0)
##  DBI                    1.2.3     2024-06-02 [1] RSPM (R 4.4.0)
##  dbplyr                 2.5.0     2024-03-19 [1] RSPM (R 4.4.0)
##  DelayedArray           0.32.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  digest                 0.6.37    2024-08-19 [2] RSPM (R 4.4.0)
##  doParallel             1.0.17    2022-02-07 [1] RSPM (R 4.4.0)
##  dotCall64              1.2       2024-10-04 [1] RSPM (R 4.4.0)
##  dplyr                  1.1.4     2023-11-17 [1] RSPM (R 4.4.0)
##  DT                     0.33      2024-04-04 [1] RSPM (R 4.4.0)
##  edgeR                * 4.4.2     2025-01-27 [1] Bioconductor 3.20 (R 4.4.2)
##  evaluate               1.0.3     2025-01-10 [2] RSPM (R 4.4.0)
##  ExperimentHub          2.14.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  ExploreModelMatrix   * 1.18.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  farver                 2.1.2     2024-05-13 [1] RSPM (R 4.4.0)
##  fastmap                1.2.0     2024-05-15 [2] RSPM (R 4.4.0)
##  fields                 16.3      2024-09-30 [1] RSPM (R 4.4.0)
##  filelock               1.0.3     2023-12-11 [1] RSPM (R 4.4.0)
##  foreach                1.5.2     2022-02-02 [1] RSPM (R 4.4.0)
##  fs                     1.6.5     2024-10-30 [2] RSPM (R 4.4.0)
##  generics               0.1.3     2022-07-05 [1] RSPM (R 4.4.0)
##  GenomeInfoDb         * 1.42.3    2025-01-27 [1] Bioconductor 3.20 (R 4.4.2)
##  GenomeInfoDbData       1.2.13    2025-01-23 [1] Bioconductor
##  GenomicAlignments      1.42.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  GenomicRanges        * 1.58.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  GetoptLong             1.0.5     2020-12-15 [1] RSPM (R 4.4.0)
##  ggbeeswarm             0.7.2     2023-04-29 [1] RSPM (R 4.4.0)
##  ggplot2              * 3.5.1     2024-04-23 [1] RSPM (R 4.4.0)
##  ggrepel                0.9.6     2024-09-07 [1] RSPM (R 4.4.0)
##  GlobalOptions          0.1.2     2020-06-10 [1] RSPM (R 4.4.0)
##  glue                   1.8.0     2024-09-30 [2] RSPM (R 4.4.0)
##  golem                  0.5.1     2024-08-27 [1] RSPM (R 4.4.0)
##  gridExtra              2.3       2017-09-09 [1] RSPM (R 4.4.0)
##  gtable                 0.3.6     2024-10-25 [1] RSPM (R 4.4.0)
##  here                 * 1.0.1     2020-12-13 [1] RSPM (R 4.4.0)
##  htmltools              0.5.8.1   2024-04-04 [2] RSPM (R 4.4.0)
##  htmlwidgets            1.6.4     2023-12-06 [2] RSPM (R 4.4.0)
##  httpuv                 1.6.15    2024-03-26 [2] RSPM (R 4.4.0)
##  httr                   1.4.7     2023-08-15 [1] RSPM (R 4.4.0)
##  igraph                 2.1.4     2025-01-23 [1] RSPM (R 4.4.0)
##  IRanges              * 2.40.1    2024-12-05 [1] Bioconductor 3.20 (R 4.4.2)
##  irlba                  2.3.5.1   2022-10-03 [1] RSPM (R 4.4.0)
##  iSEE                 * 2.18.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  iterators              1.0.14    2022-02-05 [1] RSPM (R 4.4.0)
##  jquerylib              0.1.4     2021-04-26 [2] RSPM (R 4.4.0)
##  jsonlite               1.8.9     2024-09-20 [2] RSPM (R 4.4.0)
##  KEGGREST               1.46.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  knitr                  1.49      2024-11-08 [2] RSPM (R 4.4.0)
##  later                  1.4.1     2024-11-27 [2] RSPM (R 4.4.0)
##  lattice                0.22-6    2024-03-20 [3] CRAN (R 4.4.2)
##  lazyeval               0.2.2     2019-03-15 [1] RSPM (R 4.4.0)
##  lifecycle              1.0.4     2023-11-07 [2] RSPM (R 4.4.0)
##  limma                * 3.62.2    2025-01-09 [1] Bioconductor 3.20 (R 4.4.2)
##  listviewer             4.0.0     2023-09-30 [1] RSPM (R 4.4.0)
##  lobstr               * 1.1.2     2022-06-22 [1] RSPM (R 4.4.0)
##  locfit                 1.5-9.11  2025-02-03 [1] RSPM (R 4.4.0)
##  magick                 2.8.5     2024-09-20 [1] RSPM (R 4.4.0)
##  magrittr               2.0.3     2022-03-30 [2] RSPM (R 4.4.0)
##  maps                   3.4.2.1   2024-11-10 [1] RSPM (R 4.4.0)
##  MASS                   7.3-64    2025-01-04 [3] RSPM (R 4.4.0)
##  Matrix                 1.7-2     2025-01-23 [3] RSPM (R 4.4.0)
##  MatrixGenerics       * 1.18.1    2025-01-09 [1] Bioconductor 3.20 (R 4.4.2)
##  matrixStats          * 1.5.0     2025-01-07 [1] RSPM (R 4.4.0)
##  memoise                2.0.1     2021-11-26 [2] RSPM (R 4.4.0)
##  mgcv                   1.9-1     2023-12-21 [3] CRAN (R 4.4.2)
##  mime                   0.12      2021-09-28 [2] RSPM (R 4.4.0)
##  miniUI                 0.1.1.1   2018-05-18 [2] RSPM (R 4.4.0)
##  munsell                0.5.1     2024-04-01 [1] RSPM (R 4.4.0)
##  nlme                   3.1-167   2025-01-27 [3] RSPM (R 4.4.0)
##  paletteer              1.6.0     2024-01-21 [1] RSPM (R 4.4.0)
##  patchwork            * 1.3.0     2024-09-16 [1] RSPM (R 4.4.0)
##  pheatmap             * 1.0.12    2019-01-04 [1] RSPM (R 4.4.0)
##  pillar                 1.10.1    2025-01-07 [2] RSPM (R 4.4.0)
##  pkgconfig              2.0.3     2019-09-22 [2] RSPM (R 4.4.0)
##  plotly                 4.10.4    2024-01-13 [1] RSPM (R 4.4.0)
##  png                    0.1-8     2022-11-29 [1] RSPM (R 4.4.0)
##  postcards            * 0.2.3     2022-01-07 [1] RSPM (R 4.4.0)
##  promises               1.3.2     2024-11-28 [2] RSPM (R 4.4.0)
##  purrr                  1.0.2     2023-08-10 [2] RSPM (R 4.4.0)
##  R.cache                0.16.0    2022-07-21 [1] RSPM (R 4.4.0)
##  R.methodsS3            1.8.2     2022-06-13 [1] RSPM (R 4.4.0)
##  R.oo                   1.27.0    2024-11-01 [1] RSPM (R 4.4.0)
##  R.utils                2.12.3    2023-11-18 [1] RSPM (R 4.4.0)
##  R6                     2.5.1     2021-08-19 [2] RSPM (R 4.4.0)
##  rappdirs               0.3.3     2021-01-31 [2] RSPM (R 4.4.0)
##  RColorBrewer         * 1.1-3     2022-04-03 [1] RSPM (R 4.4.0)
##  Rcpp                   1.0.14    2025-01-12 [2] RSPM (R 4.4.0)
##  RCurl                  1.98-1.16 2024-07-11 [1] RSPM (R 4.4.0)
##  recount3             * 1.16.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  rematch2               2.1.2     2020-05-01 [1] RSPM (R 4.4.0)
##  restfulr               0.0.15    2022-06-16 [1] RSPM (R 4.4.2)
##  rintrojs               0.3.4     2024-01-11 [1] RSPM (R 4.4.0)
##  rjson                  0.2.23    2024-09-16 [1] RSPM (R 4.4.0)
##  rlang                  1.1.5     2025-01-17 [2] RSPM (R 4.4.0)
##  rmarkdown              2.29      2024-11-04 [2] RSPM (R 4.4.0)
##  rprojroot              2.0.4     2023-11-05 [2] RSPM (R 4.4.0)
##  Rsamtools              2.22.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  RSQLite                2.3.9     2024-12-03 [1] RSPM (R 4.4.0)
##  rstudioapi             0.17.1    2024-10-22 [2] RSPM (R 4.4.0)
##  rsvd                   1.0.5     2021-04-16 [1] RSPM (R 4.4.0)
##  rtracklayer            1.66.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  S4Arrays               1.6.0     2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  S4Vectors            * 0.44.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  sass                   0.4.9     2024-03-15 [2] RSPM (R 4.4.0)
##  ScaledMatrix           1.14.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  scales                 1.3.0     2023-11-28 [1] RSPM (R 4.4.0)
##  scater                 1.34.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  scuttle                1.16.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  sessioninfo          * 1.2.2     2021-12-06 [2] RSPM (R 4.4.0)
##  shape                  1.4.6.1   2024-02-23 [1] RSPM (R 4.4.0)
##  shiny                  1.10.0    2024-12-14 [2] RSPM (R 4.4.0)
##  shinyAce               0.4.4     2025-02-03 [1] RSPM (R 4.4.0)
##  shinydashboard         0.7.2     2021-09-30 [1] RSPM (R 4.4.0)
##  shinyjs                2.1.0     2021-12-23 [1] RSPM (R 4.4.0)
##  shinyWidgets           0.8.7     2024-09-23 [1] RSPM (R 4.4.0)
##  SingleCellExperiment * 1.28.1    2024-11-10 [1] Bioconductor 3.20 (R 4.4.2)
##  spam                   2.11-1    2025-01-20 [1] RSPM (R 4.4.0)
##  SparseArray            1.6.1     2025-01-19 [1] Bioconductor 3.20 (R 4.4.2)
##  SpatialExperiment    * 1.16.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  spatialLIBD          * 1.18.0    2024-11-07 [1] Bioconductor 3.20 (R 4.4.2)
##  statmod                1.5.0     2023-01-06 [1] RSPM (R 4.4.0)
##  styler                 1.10.3    2024-04-07 [1] RSPM (R 4.4.0)
##  SummarizedExperiment * 1.36.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  tibble                 3.2.1     2023-03-20 [2] RSPM (R 4.4.0)
##  tidyr                  1.3.1     2024-01-24 [1] RSPM (R 4.4.0)
##  tidyselect             1.2.1     2024-03-11 [1] RSPM (R 4.4.0)
##  UCSC.utils             1.2.0     2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  usethis              * 3.1.0     2024-11-26 [2] RSPM (R 4.4.0)
##  vctrs                  0.6.5     2023-12-01 [2] RSPM (R 4.4.0)
##  vipor                  0.4.7     2023-12-18 [1] RSPM (R 4.4.0)
##  viridis                0.6.5     2024-01-29 [1] RSPM (R 4.4.0)
##  viridisLite            0.4.2     2023-05-02 [1] RSPM (R 4.4.0)
##  withr                  3.0.2     2024-10-28 [2] RSPM (R 4.4.0)
##  xfun                   0.50      2025-01-07 [2] RSPM (R 4.4.0)
##  XML                    3.99-0.18 2025-01-01 [1] RSPM (R 4.4.0)
##  xtable                 1.8-4     2019-04-21 [2] RSPM (R 4.4.0)
##  XVector                0.46.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
##  yaml                   2.3.10    2024-07-26 [2] RSPM (R 4.4.0)
##  zlibbioc               1.52.0    2024-10-29 [1] Bioconductor 3.20 (R 4.4.2)
## 
##  [1] /__w/_temp/Library
##  [2] /usr/local/lib/R/site-library
##  [3] /usr/local/lib/R/library
## 
## ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
proc.time()
##    user  system elapsed 
##  10.806   0.919  11.384

This book was last updated at 2025-02-04 18:19:38.601825.

© 2011-2020. All thoughts and opinions here are my own. The icon was designed by Mauricio Guzmán and is inspired by Huichol culture; it represents my community building interests.

Published with Bookdown