Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
message = FALSE,
warning = FALSE,
max.print = 100,
cache = FALSE,
fig.width = 7,
fig.height = 5,
dev="png"
)
## ----results="hide"-----------------------------------------------------------
library("RNAseqQC")
library("DESeq2")
library("ensembldb")
library("dplyr")
library("ggplot2")
library("purrr")
library("tidyr")
library("tibble")
library("magrittr")
## -----------------------------------------------------------------------------
count_mat <- counts(T47D)
meta <- data.frame(colData(T47D))
# count matrix; rownames must be ENSEMBL gene IDs
count_mat[head(which(rowSums(count_mat) > 0)), 1:10]
# metadata of the samples, where row i corresponds to column i in the count matrix
meta
## ----eval=FALSE---------------------------------------------------------------
# dds <- make_dds(counts = count_mat, metadata = meta, ah_record = "AH89426")
## ----include=FALSE------------------------------------------------------------
dds <- T47D
## ----eval=FALSE---------------------------------------------------------------
# mcols(AnnotationHub::AnnotationHub()) %>%
# as_tibble(rownames = "record_id") %>%
# dplyr::filter(rdataclass == "EnsDb")
## -----------------------------------------------------------------------------
plot_total_counts(dds)
## -----------------------------------------------------------------------------
plot_library_complexity(dds)
## -----------------------------------------------------------------------------
plot_gene_detection(dds)
## -----------------------------------------------------------------------------
plot_biotypes(dds)
## -----------------------------------------------------------------------------
dds <- filter_genes(dds, min_count = 5, min_rep = 4)
## -----------------------------------------------------------------------------
vsd <- vst(dds)
mean_sd_plot(vsd)
## -----------------------------------------------------------------------------
map(c("1", "5", "14"), ~plot_chromosome(vsd, .x))
## ----fig.width=8, fig.height=12, out.width="95%"------------------------------
# define new grouping variable
colData(vsd)$trt_mut <- paste0(colData(vsd)$treatment, "_", colData(vsd)$mutation)
ma_plots <- plot_sample_MAs(vsd, group = "trt_mut")
cowplot::plot_grid(plotlist = ma_plots[17:24], ncol = 2)
## -----------------------------------------------------------------------------
# set seed to control random annotation colors
set.seed(1)
plot_sample_clustering(vsd, anno_vars = c("treatment", "mutation", "replicate"), distance = "euclidean")
## -----------------------------------------------------------------------------
plot_pca(vsd, PC_x = 1, PC_y = 2, color_by = "treatment", shape_by = "mutation")
## -----------------------------------------------------------------------------
plot_pca(vsd, PC_x = 1, PC_y = 2, color_by = "ENSG00000223972")
plot_pca(vsd, PC_x = 1, PC_y = 2, color_by = "MTOR")
## -----------------------------------------------------------------------------
pca_res <- plot_pca(vsd, show_plot = FALSE)
plot_loadings(pca_res, PC = 1, annotate_top_n = 5)
plot_loadings(pca_res, PC = 1, highlight_genes = c("CD34", "FLT1", "MAPT"))
plot_loadings(pca_res, PC = 4, color_by = "gene_biotype", show_plot = F)$plot +
theme(legend.position = "bottom")
plot_loadings(pca_res, PC = 2, color_by = "gc_content")
## ----fig.width=10, fig.height=9.5, out.width="95%"----------------------------
plot_pca_scatters(vsd, n_PCs = 5, color_by = "treatment", shape_by = "mutation")
## -----------------------------------------------------------------------------
dds <- estimateSizeFactors(dds)
plot_gene("CLEC2B", dds, x_var = "mutation", color_by = "treatment")
# modify the plot
plot_gene("CLEC2B", dds, x_var = "mutation", color_by = "treatment", show_plot = F)$plot + scale_color_manual(values=c("orange","blue3"))
# a custom plot type
plot_data <- plot_gene("CLEC2B", dds, show_plot = F)$data
plot_data %>%
ggplot(aes(treatment, count, color = mutation)) +
geom_point() +
geom_path(
aes(x = treatment, y = mean_count, color = mutation, group = mutation),
data = plot_data %>%
group_by(treatment, mutation) %>%
summarize(mean_count = mean(count), .groups = "drop")
) +
labs(y = "log2(norm. count)", title="CLEC2B") +
cowplot::theme_cowplot()
## ----eval=FALSE---------------------------------------------------------------
# plots <- rownames(dds)[1:100] %>%
# map(~plot_gene(.x, dds, x_var="mutation", color_by="treatment", show_plot = FALSE)$plot)
# save_plots_to_pdf(plots, file="genes.pdf", ncol=5, nrow=5)
## ----eval=FALSE---------------------------------------------------------------
# # design variables need to be factors
# # since we update the design of the dds
# # object, we have to do it manually
# dds$mutation <- as.factor(dds$mutation)
# dds$treatment <- as.factor(dds$treatment)
# design(dds) <- ~ mutation + treatment
#
# dds <- DESeq(dds, parallel = T)
# plotDispEsts(dds)
## ----eval=FALSE---------------------------------------------------------------
# # get testing results
# de_res <- lfcShrink(dds, coef = "mutation_WT_vs_D538G", lfcThreshold = log2(1.5), type = "normal", parallel = TRUE)
#
# # MA plot
# plot_ma(de_res, dds, annotate_top_n = 5)
## ----echo=FALSE---------------------------------------------------------------
plot_ma(T47D_diff_testing, dds, annotate_top_n = 5)
## ----eval=FALSE---------------------------------------------------------------
# plot_ma(de_res, dds, highlight_genes = c("CLEC2B", "PAGE5", "GAPDH"))
## ----echo=FALSE---------------------------------------------------------------
plot_ma(T47D_diff_testing, dds, highlight_genes = c("CLEC2B", "PAGE5", "GAPDH"))
## -----------------------------------------------------------------------------
sessionInfo()
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.