diff --git a/fig/intro-sce-rendered-unnamed-chunk-14-1.png b/fig/intro-sce-rendered-unnamed-chunk-14-1.png new file mode 100644 index 0000000..cd3f489 Binary files /dev/null and b/fig/intro-sce-rendered-unnamed-chunk-14-1.png differ diff --git a/instructor-notes.md b/instructor-notes.md index d9a67aa..7c75435 100644 --- a/instructor-notes.md +++ b/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. diff --git a/intro-sce.md b/intro-sce.md index aa56f8c..4017610 100644 --- a/intro-sce.md +++ b/intro-sce.md @@ -144,19 +144,21 @@ 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 get the data for a different sample from `WTChimeraData` (other than the fifth one) ::: 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. +Here we assign the sixth sample to `sce6`: -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! -::: +``` r +sce6 <- WTChimeraData(samples = 6) +sce6 +``` +::: + :::: ### `assays` @@ -295,7 +297,7 @@ library(scater) plotReducedDim(sce, "pca.corrected.E8.5", colour_by = "celltype.mapped") ``` - + :::::::::::::::::::::::::::::::::: challenge @@ -378,6 +380,22 @@ altExpNames(0): ::::::::::::::::::::::::::::::::::::::::::::: +:::: 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 diff --git a/md5sum.txt b/md5sum.txt index 4c7dd28..b9507b3 100644 --- a/md5sum.txt +++ b/md5sum.txt @@ -4,13 +4,13 @@ "config.yaml" "b0d664d3d6abdd0e98b16282e1c03107" "site/built/config.yaml" "2024-09-06" "index.md" "495939ddd3f110be3bbcd49b60f4a7ce" "site/built/index.md" "2024-09-06" "links.md" "8184cf4149eafbf03ce8da8ff0778c14" "site/built/links.md" "2024-09-06" -"episodes/intro-sce.Rmd" "1df9dba39ca154d95e82dbeb7c43b00d" "site/built/intro-sce.md" "2024-09-13" +"episodes/intro-sce.Rmd" "e0218183fa139dbe5adbc2ed0b02b8c0" "site/built/intro-sce.md" "2024-09-16" "episodes/eda_qc.Rmd" "1e88f395d30778f4526532deea43eb03" "site/built/eda_qc.md" "2024-09-06" "episodes/cell_type_annotation.Rmd" "66af56b730aaa88e937bc1743afb471a" "site/built/cell_type_annotation.md" "2024-09-08" "episodes/multi-sample.Rmd" "2d38d9903358ea8a8067abd82a1f1f54" "site/built/multi-sample.md" "2024-09-08" "episodes/large_data.Rmd" "b9710492c6792ea435778c4e42f27e02" "site/built/large_data.md" "2024-09-09" "episodes/hca.Rmd" "e01d3fd1e07f158bed08b72d657ae1d1" "site/built/hca.md" "2024-09-09" -"instructors/instructor-notes.md" "cae72b6712578d74a49fea7513099f8c" "site/built/instructor-notes.md" "2024-09-06" +"instructors/instructor-notes.md" "205339793f625a1844a768dea8e4a9c8" "site/built/instructor-notes.md" "2024-09-16" "learners/reference.md" "40fc1d0be2412d2d9d434a5bc84e4de8" "site/built/reference.md" "2024-09-06" "learners/setup.md" "25772142a26fe3c0cebbe650f5683269" "site/built/setup.md" "2024-09-06" "profiles/learner-profiles.md" "074074346a544b8d2e0774998781c5d4" "site/built/learner-profiles.md" "2024-09-13"