file.path = './localdata/E-MTAB-8559-quantification-raw-files/'
raw.counts <- as(Matrix::readMM(
paste(
file.path,
'E-MTAB-8559.aggregated_filtered_counts.mtx',
sep=''
)
), 'CsparseMatrix')
dim(raw.counts)
- 23284
- 19880
Omics Data is the Future of Medicine
Feb 1, 2023
1) Well, environmental factors can be a cause, but limited ability to affect them
To build a living biobank, we established a biopsy pipeline, collecting samples from patients diagnosed with epithelial ovarian cancer treated at the Christie Hospital.
– Nelson et al. (2020)
(Christie Hospital is in Manchester)
Between May 2016 and June 2019, we collected 312 samples from patients with chemo-naïve and relapsed disease, either as solid biopsies or as ascites (Fig. 1a)
Ten patients had HGSOC while two had mucinous ovarian carcinoma. Longitudinal biopsies were collected from three patients.
– Nelson et al. (2020)
The primer contains:
an Illumina TruSeq Read 1 (read 1 sequencing primer)
16 nt 10x Barcode
12 nt unique molecular identifier (UMI)
30 nt poly(dT) sequence
Barcoded, full-length cDNA is amplified via PCR to generate sufficient mass for library construction.
– Nelson et al. (2020)
Ensembl.ID
1 ENSG00000000003
2 ENSG00000000419
3 ENSG00000000457
4 ENSG00000000460
5 ENSG00000000938
6 ENSG00000000971
Cell.ID
1 SAMEA6492740-AAACCCACAGTTAGGG
2 SAMEA6492740-AAACCCACATGTGTCA
3 SAMEA6492740-AAACCCAGTCGCATGC
4 SAMEA6492740-AAACCCAGTCTTTCAT
5 SAMEA6492740-AAACCCATCCGTGTCT
6 SAMEA6492740-AAACCCATCCTCTCTT
# Store as a SingleCellExperiment object for convenience
ovarian.sce <- SingleCellExperiment(
assays=list(counts=raw.counts),
)
# Add patient metadata
ovarian.sce$patient <- exp.design.table$Sample.Characteristic.individual.
# Take a peak at internal data structure
ovarian.sce
class: SingleCellExperiment
dim: 23284 19880
metadata(0):
assays(1): counts
rownames(23284): ENSG00000000003 ENSG00000000419 ... ENSG00000289701
ENSG00000289716
rowData names(0):
colnames(19880): SAMEA6492740-AAACCCACAGTTAGGG
SAMEA6492740-AAACCCACATGTGTCA ... SAMEA6492743-TTTGTTGGTCCTGGTG
SAMEA6492743-TTTGTTGTCAGATTGC
colData names(1): patient
reducedDimNames(0):
mainExpName: NULL
altExpNames(0):
class: SingleCellExperiment
dim: 23284 19880
metadata(0):
assays(2): counts logcounts
rownames(23284): ENSG00000000003 ENSG00000000419 ... ENSG00000289701
ENSG00000289716
rowData names(0):
colnames(19880): SAMEA6492740-AAACCCACAGTTAGGG
SAMEA6492740-AAACCCACATGTGTCA ... SAMEA6492743-TTTGTTGGTCCTGGTG
SAMEA6492743-TTTGTTGTCAGATTGC
colData names(2): patient sizeFactor
reducedDimNames(0):
mainExpName: NULL
altExpNames(0):
# We'll assign clusters by eye since it's obvious
ovarian.sce$tumor.or.stromal <- "Stromal"
ovarian.sce$tumor.or.stromal[ovarian.sce$tumor.stromal.clusters==1] <- "Tumor.1"
ovarian.sce$tumor.or.stromal[ovarian.sce$tumor.stromal.clusters==2] <- "Tumor.2"
ovarian.sce$tumor.or.stromal[ovarian.sce$tumor.stromal.clusters==4] <- "Tumor.3"
ovarian.sce$tumor.or.stromal[ovarian.sce$tumor.stromal.clusters==5] <- "Tumor.4"
cluster <- "3" # the stromal cluster
diff.exp.gene <- rownames(ovarian.sce)[
order(marker.info[[cluster]]$mean.AUC, decreasing=TRUE)[[1]]
]
print(diff.exp.gene)
[1] "ENSG00000106366"
plotReducedDim(
ovarian.sce,
"TSNE",
colour_by=diff.exp.gene,
shape_by="patient",
text_by="tumor.or.stromal",
text_colour="cyan"
) +
ggtitle("Ovarian Cancer Cells by SERPINE1 (ENSG00000106366) Expression") +
theme(
panel.background = element_rect(fill = "darkblue"),
plot.background = element_rect(fill = "cyan")
)