From 8d0b958887625220d92b1eb1f9c953169ecfb513 Mon Sep 17 00:00:00 2001 From: Andrew Ghazi <6763470+andrewGhazi@users.noreply.github.com> Date: Fri, 13 Sep 2024 14:06:56 -0400 Subject: [PATCH 1/3] background on the course --- instructors/instructor-notes.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/instructors/instructor-notes.md b/instructors/instructor-notes.md index d9a67aa..7c75435 100644 --- a/instructors/instructor-notes.md +++ b/instructors/instructor-notes.md @@ -2,4 +2,7 @@ title: 'Instructor Notes' --- -This is a placeholder file. Please add content here. + +This workshop is based on the [OSCA tutorial](https://github.com/Bioconductor/ISMB.OSCA) that Davide Risso, Dario Righelli, Marcel Ramos, and myself gave at the ISMB conference last year. The tutorial is a light version of the [OSCA book](https://bioconductor.org/books/release/OSCA/) that concentrates on essential aspects for getting started with the book ("The OSCA book in a day"). The tutorial is in large parts a faithful copy of the OSCA book, but also adds contents that are not (yet) covered in the OSCA book such as interoperability with other popular single-cell analysis ecosystems and accessing data from the Human Cell Atlas. + +The learner profiles page covers the pre-requisites including the basics of statistics, R, and molecular biology. Point this out to students in order to help direct those missing large pieces of the foundation toward where they need to go. From 883adf739438baa9dcf52f4ab360fd2f86e9db05 Mon Sep 17 00:00:00 2001 From: Andrew Ghazi <6763470+andrewGhazi@users.noreply.github.com> Date: Mon, 16 Sep 2024 12:51:54 -0400 Subject: [PATCH 2/3] move q1 to extension challenge, introduce more repetitive q1 --- episodes/intro-sce.Rmd | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/episodes/intro-sce.Rmd b/episodes/intro-sce.Rmd index abc73ed..9a2ecb0 100644 --- a/episodes/intro-sce.Rmd +++ b/episodes/intro-sce.Rmd @@ -128,19 +128,20 @@ We can think of this (and other) class as a _container_, that contains several d Depending on the object, slots can contain different types of data (e.g., numeric matrices, lists, etc.). Here we'll review the main slots of the SingleCellExperiment class as well as their getter/setter methods. - :::: challenge -Before `SingleCellExperiment`, coders working with single cell data would sometimes keep all of these components in separate objects e.g. a matrix of counts, a data.frame of sample metadata, a data.frame of gene annotations and so on. What are the main disadvantages of this sort of "from scratch" approach? - +Try to extract a different sample from `WTChimeraData` (other than the fifth one) ::: solution +Here we extract the sixth sample: +```{r, message = FALSE, warning=FALSE, eval=FALSE} +sce <- WTChimeraData(samples = 6) -1. You have to do tons of book-keeping! If you perform a QC step that removes dead cells, now you also have to remember to remove that same set of cells from the cell-wise metadata. Dropped un-expressed genes? Don't forget to filter the gene metadata table too. - -2. All the downstream steps have to be "from scratch" as well! All the data munging, analysis, and visualization code has to be customized to the idiosyncrasies of your input. Agh! +sce +``` +We'll keep using the fifth sample for the rest of this exercise, so if you ran that, re-run `sce <- WTChimeraData(samples = 5)` so that your answers align with what's shown below. ::: - + :::: ### `assays` @@ -265,6 +266,22 @@ combined_sce ::::::::::::::::::::::::::::::::::::::::::::: +:::: challenge + +#### Extension Challenge 1 + +Before `SingleCellExperiment`, coders working with single cell data would sometimes keep all of these components in separate objects e.g. a matrix of counts, a data.frame of sample metadata, a data.frame of gene annotations and so on. What are the main disadvantages of this sort of "from scratch" approach? + +::: solution + +1. You have to do tons of book-keeping! If you perform a QC step that removes dead cells, now you also have to remember to remove that same set of cells from the cell-wise metadata. Dropped un-expressed genes? Don't forget to filter the gene metadata table too. + +2. All the downstream steps have to be "from scratch" as well! All the data munging, analysis, and visualization code has to be customized to the idiosyncrasies of your input. Agh! + +::: + +:::: + :::::::::::::: checklist ## Further Reading From b950951e29da0d0b2855058a3fb8a0b06122f82e Mon Sep 17 00:00:00 2001 From: Andrew Ghazi <6763470+andrewGhazi@users.noreply.github.com> Date: Mon, 16 Sep 2024 12:57:43 -0400 Subject: [PATCH 3/3] remove need to reassign --- episodes/intro-sce.Rmd | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/episodes/intro-sce.Rmd b/episodes/intro-sce.Rmd index 9a2ecb0..ae0da80 100644 --- a/episodes/intro-sce.Rmd +++ b/episodes/intro-sce.Rmd @@ -130,16 +130,16 @@ Depending on the object, slots can contain different types of data (e.g., numeri :::: challenge -Try to extract a different sample from `WTChimeraData` (other than the fifth one) +Try to get the data for a different sample from `WTChimeraData` (other than the fifth one) ::: solution -Here we extract the sixth sample: + +Here we assign the sixth sample to `sce6`: + ```{r, message = FALSE, warning=FALSE, eval=FALSE} -sce <- WTChimeraData(samples = 6) +sce6 <- WTChimeraData(samples = 6) -sce +sce6 ``` - -We'll keep using the fifth sample for the rest of this exercise, so if you ran that, re-run `sce <- WTChimeraData(samples = 5)` so that your answers align with what's shown below. ::: ::::