From cbcbb095dec9813a138a0a18ea667baeda905531 Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 8 Jan 2024 17:32:36 +0000 Subject: [PATCH 01/29] First draft of addressing simple analysis reviewer questions reference genes in whole transcriptome data correlation of novel isoforms vs gene expression --- Reviews/1_reviewAnalysis.R | 94 ++++++++++++++++++++++++++++++++++++++ Reviews/rTg4510_config.R | 78 +++++++++++++++++++++++++++++++ 2 files changed, 172 insertions(+) create mode 100644 Reviews/1_reviewAnalysis.R create mode 100644 Reviews/rTg4510_config.R diff --git a/Reviews/1_reviewAnalysis.R b/Reviews/1_reviewAnalysis.R new file mode 100644 index 0000000..24ebc4d --- /dev/null +++ b/Reviews/1_reviewAnalysis.R @@ -0,0 +1,94 @@ +#!/usr/bin/env Rscript +## ----------Script----------------- +## +## Author: Szi Kay Leung (S.K.Leung@exeter.ac.uk) +## simple analysis rewiew +## find reference genes +## correlation +## +## -------------------------------- + +library("dplyr") +library("stringr") +library("cowplot") +library("data.table") +options(scipen = 999) + +## --------------------------- find reference genes +housekeepingGenes = c("Las1l","Rrp1","Gusb","Polr2b","Cyc1","Tbp","Xpnpep1","Gapdh","Actb","Rpl13a","Sdha") +class.files$glob_iso[class.files$glob_iso$associated_gene %in% housekeepingGenes,] %>% + group_by(associated_gene) %>% tally() + +class.files$targ_all[class.files$targ_all$associated_gene %in% housekeepingGenes,] %>% + group_by(associated_gene) %>% tally() + + +# gene expression plots +HKGeneExpPlots <- list() +PbGeneId = unique(word(subset(class.files$glob_iso, associated_gene %in% housekeepingGenes)[["isoform"]],c(2),sep=fixed("."))) +for(i in PbGeneId){ + HKGeneExpPlots[[i]] <- plot_trans_exp_individual_overtime(i,GlobalDESeq$resGeneAnno$wald$norm_counts,type="gene") +} +names(HKGeneExpPlots) <- housekeepingGenes + +# most abundant top-ranked expression plot +HKTransExpPlots <- list() +for(i in housekeepingGenes){ + HKTransExpPlots [[i]] <- plot_transexp_overtime(i,GlobalDESeq$resTranAnno$wald$norm_counts,show="toprank",rank=3,setorder=c("CONTROL","CASE")) +} + +plot_grid(plotlist = HKGeneExpPlots) +plot_grid(plotlist = HKTransExpPlots) + + +## --------------------------- correlation + +class.files$targ_offtargets <- merge(class.files$targ_offtargets, rawExp$targ_ont_all, by = "isoform", all.x = T) +novelIsoforms <- class.files$targ_all %>% filter(associated_transcript == "novel") %>% select(contains(c("ONT", "Iso.Seq"))) +novelIsoformsSample <- apply(novelIsoforms, 2, function(c)sum(c!=0)) %>% reshape2::melt(., value.name = "novelNum") %>% tibble::rownames_to_column(., var = "sample") +allReadCountSample <- colSums(Filter(is.numeric, class.files$targ_all %>% select(contains(c("ONT", "Iso.Seq"))))) %>% reshape2::melt(., value.name = "totalReads") %>% tibble::rownames_to_column(., var = "sample") + +corrNovelNumReads <- merge(novelIsoformsSample,allReadCountSample) %>% filter(!sample %in% c("ONT_sum_FL","Iso.Seq_sum_FL")) %>% + mutate(platform = word(sample,c(1),sep=fixed("_")), sampleID = word(sample,c(2),sep=fixed("_"))) +PBcorrNovelNumReads <- corrNovelNumReads[corrNovelNumReads$platform == "Iso.Seq",] +ONTcorrNovelNumReads <- corrNovelNumReads[corrNovelNumReads$platform == "ONT",] +cor.test(PBcorrNovelNumReads$novelNum,PBcorrNovelNumReads$totalReads) +cor.test(ONTcorrNovelNumReads$novelNum,ONTcorrNovelNumReads$totalReads) + +library("ggplot2") +ggplot(corrNovelNumReads, aes(x = novelNum, y = totalReads, colour = platform)) + geom_point() + mytheme + + +## library +batch1 <- c("K19", "K23", "K21", "K18", "K20", "K17") +batch2 <- c("S19", "K24", "L22", "M21", "O18", "O23", "O22", "P19", "T20") +batch3 <- c("Q20", "Q21", "S18", "S23", "Q18", "Q17", "L18", "Q23", "T18") +batchedSamples <- data.frame(sampleID = c(batch1,batch2,batch3), batch = c(rep("1", length(batch1)),rep("2", length(batch2)),rep("3", length(batch3)))) +corrNovelNumReads <- merge(corrNovelNumReads,batchedSamples,by = "sampleID") + +ontCorrNovelNumReads <- corrNovelNumReads[corrNovelNumReads$platform == "ONT",] %>% mutate(ratio = novelNum/totalReads) +t.test(data = ontCorrNovelNumReads, ratio ~ batch) + +batchCorrNovelNumReads <- corrNovelNumReads %>% + group_by(platform, batch) %>% + summarise(across(c(novelNum, totalReads), list(sum = sum))) + +ggplot(ontCorrNovelNumReads, aes(x = batch, y = ratio)) + geom_boxplot() + + +# gene expression +meanGeneExpression <- aggregate(normalised_counts ~ associated_gene, data = TargetedDESeq$ontResGeneAnno$waldgenotype$norm_counts, FUN = mean) +colnames(meanGeneExpression) <- c("associated_gene", "mean_gene_counts") + +dat <- class.files$targ_all %>% + filter(associated_transcript == "novel") %>% + select(contains(c("ONT", "Iso.Seq", "associated_gene"))) + +result <- dat %>% + group_by(associated_gene) %>% + summarise_all(~ sum(. != 0)) + +meanNumNovel <- reshape2::melt(result , variable.name = "sample", value.name = "num_novel_iso") %>% + group_by(associated_gene) %>% summarise(mean = mean(num_novel_iso)) + +merge(meanGeneExpression,meanNumNovel, by = "associated_gene") %>% ggplot(., aes(x = mean_gene_counts, y = mean)) + geom_point() diff --git a/Reviews/rTg4510_config.R b/Reviews/rTg4510_config.R new file mode 100644 index 0000000..ccd33a2 --- /dev/null +++ b/Reviews/rTg4510_config.R @@ -0,0 +1,78 @@ +# Szi Kay Leung: sl693@exeter.ac.uk + +suppressMessages(library("data.table")) +LOGEN <- "/lustre/projects/Research_Project-MRC148213/sl693/scripts/LOGen" +source(paste0(LOGEN,"/transcriptome_stats/read_sq_classification.R")) +source(paste0(LOGEN,"/target_gene_annotation/summarise_gene_stats.R")) +source(paste0(LOGEN,"/compare_datasets/dataset_identifer.R")) +source(paste0(LOGEN, "/differential_analysis/plot_transcript_level.R")) +source(paste0(LOGEN, "/aesthetics_basics_plots/pthemes.R")) +source(paste0(LOGEN, "/differential_analysis/run_DESeq2.R")) + + +TargetGene <- c("Abca1","Sorl1","Mapt","Bin1","Tardbp","App","Abca7", + "Ptk2b","Ank1","Fyn","Clu","Cd33","Fus","Picalm","Snca","Apoe","Trpa1","Rhbdf2","Trem2","Vgf") + +## --------------------------- +# directory names +root_dir <- "/lustre/projects/Research_Project-MRC148213/sl693/" +dirnames <- list( + # global transcriptome (Iso-Seq, Iso-Seq + RNA-Seq) + glob_root = paste0(root_dir, "rTg4510/A_IsoSeq_Whole"), + targ_root = paste0(root_dir, "rTg4510/G_Merged_Targeted"), + glob_output = paste0(root_dir, "rTg4510/01_figures_tables/Whole_Transcriptome"), + targ_output = paste0(root_dir, "rTg4510/01_figures_tables/Targeted_Transcriptome"), + + # proteogeonomics + protein = paste0(root_dir, "rTg4510/G_Merged_Targeted/4_proteogenomics/6_refined_database") +) + +## ------------- Phenotype files ------------------- + +phenotype <- list( + targ_ont = read.table(paste0(root_dir, "rTg4510/0_metadata/TargetedOntPhenotype.txt"), header = T), + targ_iso = read.table(paste0(root_dir, "rTg4510/0_metadata/TargetedIsoSeqPhenotype.txt"), header = T) +) + + +## --------------------------- +# Final classification file +class.names.files <- list( + glob_iso = paste0(dirnames$glob_root, "/2_sqanti3/WholeIsoSeq.collapsed_RulesFilter_result_classification.txt"), + targ_offtargets = paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.txt"), + targ_all = paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts.txt"), + targ_filtered = paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt") +) +class.files <- lapply(class.names.files, function(x) SQANTI_class_preparation(x,"nstandard")) + + +## --------------------------- + +# Expression +rawExp <- list( + targ_ont_all = read.csv(paste0(dirnames$targ_root, "/1_cupcake_collapse/demux_fl_count.csv")) +) + +## ---------- DESeq2 results ----------------- +cat("Input DESEQ2 results\n") +GlobalDESeq <- list( + resTranAnno = readRDS(file = paste0(dirnames$glob_output, "/IsoSeq_DESeq2TranscriptLevel.RDS")), + resGeneAnno = readRDS(file = paste0(dirnames$glob_output, "/IsoSeq_DESeq2GeneLevel.RDS")) +) + +TargetedDESeq <- list( + ontResTranAnno = readRDS(file = paste0(dirnames$targ_output, "/Ont_DESeq2TranscriptLevel.RDS")), + isoResTranAnno = readRDS(file = paste0(dirnames$targ_output, "/IsoSeq_DESeq2TranscriptLevel.RDS")), + ontResGeneAnno = readRDS(file = paste0(dirnames$targ_output, "/Ont_DESeq2GeneLevel.RDS")), + isoResGeneAnno = readRDS(file = paste0(dirnames$targ_output, "/IsoSeq_DESeq2GeneLevel.RDS")) +) +TargetedDESeq$ontResTranAnno$wald$anno_res <- TargetedDESeq$ontResTranAnno$wald$anno_res %>% filter(padj < 0.05) +TargetedDESeq$ontResTranAnno$wald8mos$anno_res <- TargetedDESeq$ontResTranAnno$wald8mos$anno_res %>% filter(padj < 0.05) +TargetedDESeq$ontResTranAnno$wald$norm_counts <- merge(TargetedDESeq$ontResTranAnno$wald$norm_counts, class.files$targ_filtered[,c("isoform","structural_category")], by = "isoform") + + +## -------- Proteogenomics ------------------- + +protein = list( + t2p.collapse = read.table(paste0(dirnames$protein,"/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T) +) From 9976a28c94f4c759735dc7a7cbf32a98fbd45cd8 Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 8 Jan 2024 17:35:07 +0000 Subject: [PATCH 02/29] Run proteogenomics pipeline for targeted merged dataset (Iso-Seq + BDR) across 20 genes only Process orf_refined.csv after pipeline Differential transcript expression analysis at protein level --- .../4_Proteogenomics/1_run_proteogenomics.sh | 37 +++++++ .../rTg4510_proteomics.config | 96 +++++++++++++++++++ Reviews/2_proteogenomics.R | 90 +++++++++++++++++ 3 files changed, 223 insertions(+) create mode 100644 B_Targeted_Transcriptome/4_Proteogenomics/1_run_proteogenomics.sh create mode 100644 B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config create mode 100644 Reviews/2_proteogenomics.R diff --git a/B_Targeted_Transcriptome/4_Proteogenomics/1_run_proteogenomics.sh b/B_Targeted_Transcriptome/4_Proteogenomics/1_run_proteogenomics.sh new file mode 100644 index 0000000..2ba6e0d --- /dev/null +++ b/B_Targeted_Transcriptome/4_Proteogenomics/1_run_proteogenomics.sh @@ -0,0 +1,37 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrchq # submit to the parallel queue +#SBATCH --time=2:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1_run_proteogenomics.o +#SBATCH --error=1_run_proteogenomics.e + +# 04/01/2024: run proteogenomics pipeline on rTg4510 combined targeted dataset + +#-----------------------------------------------------------------------# +## print start date and time +echo Job started on: +date -u + +module load Miniconda2 +source activate nanopore +source /lustre/projects/Research_Project-MRC148213/sl693/scripts/LOGen/proteomics/proteogenomics.sh +source /lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config + +echo "#************************************* Collate and prepare long-read data" +collate_longread_processed +prepare_reference_tables +summarise_longread_data + +echo "#************************************* Call open reading frames and classify proteins" +call_orf +determine_best_orf +refine_calledorf +classify_protein + +echo "#***************All done!****************#" \ No newline at end of file diff --git a/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config b/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config new file mode 100644 index 0000000..afb091b --- /dev/null +++ b/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config @@ -0,0 +1,96 @@ +## --------------------------- +## +## Script name: rTg4510_proteomics.config +## +## Purpose of script: Config file for running proteogenomics pipeline on rTg4510 data +## +## Author: Szi Kay Leung +## +## Date Created: 04-01-2024 +## +## Email: sl693@exeter.ac.uk +## +## --------------------------- +## --------------------------- + +export NAME=all_iso_ont + +## --------------------------- + +## Output root directory filepath (ensure path exists) +ROOTDIR=/lustre/projects/Research_Project-MRC148213/sl693 +export WKD_ROOT=${ROOTDIR}/rTg4510/G_Merged_Targeted/4_proteogenomics + + +## --------------------------- + +## Software +export SOFTDIR=${ROOTDIR}/software +export REFDIR=${ROOTDIR}/reference + +# git clone https://github.com/sheynkman-lab/Long-Read-Proteogenomics.git +export LREAD=${SOFTDIR}/Long-Read-Proteogenomics/modules/ + +# git clone https://github.com/ConesaLab/SQANTI3.git +export PYTHONPATH=$PYTHONPATH:${SOFTDIR}/cDNA_Cupcake/sequence/ +export PATH=$PATH:${SOFTDIR}/SQANTI3 +export PATH=$PATH:${LOGEN_ROOT}/proteomics/bin/ + +# git clone https://github.com/Magdoll/cDNA_Cupcake.git +export PYTHONPATH=$PYTHONPATH:${SOFTDIR}/cDNA_Cupcake/sequence/ +export PATH=$PATH:$PYTHONPATH:${SOFTDIR}/cDNA_Cupcake/sequence/ + +#mkdir -p ${SOFTDIR}/Long-Read-Proteogenomics/modules/sqanti_protein/src/utilities +#cp ${SOFTDIR}/SQANTI3/utilities/gtfToGenePred ${LOGEN_ROOT}/proteomics/bin/ + +# manual download from https://sourceforge.net/projects/rna-cpat/files/v1.2.2/prebuilt_model +export HEXAMER=${REFDIR}/CPAT/Mouse_Hexamer.tsv +export LOGITMODEL=${REFDIR}/CPAT/Mouse_logitModel.RData + + +## --------------------------- + +## Reference data filepaths +# wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M22/gencode.vM22.annotation.gtf.gz +# wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M22/gencode.vM22.transcripts.fa.gz +# wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M22/gencode.vM22.pc_transcripts.fa.gz +# wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M22/gencode.vM22.pc_translations.fa.gz + +export GENOME_GTF=${REFDIR}/annotation/gencode.vM22.annotation.gtf +export GENOME_FASTA=${REFDIR}/mouse/mm10.fa +export GENOME_TRANSCRIPT_FASTA=${REFDIR}/mouse/gencode.vM22.transcripts.fa +export GENOME_TRANSLATION_FASTA=${REFDIR}/mouse/gencode.vM22.pc_translations.fa + + +## --------------------------- + +## Long Read data (SQANTI3 files) +export SQANTIDIR=/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/2_sqanti3 +export ISO_CLASSFILE=${SQANTIDIR}/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt +export ISO_FASTA=${SQANTIDIR}/all_iso_ont_collapsed.filtered_counts_filtered.fa +export ISO_GTF=${SQANTIDIR}/all_iso_ont_collapsed.filtered_counts_filtered.gtf + +## smaller pilot data to test pipeline +#(head -n 1 $ISO_CLASSFILE && grep Trem2 $ISO_CLASSFILE) > ${SQANTIDIR}/Trem2_filtered.txt +#awk '{print $0}' ${SQANTIDIR}/Trem2_filtered.txt +#awk '{print $2}' ${SQANTIDIR}/Trem2_filtered.txt > ${SQANTIDIR}/Trem2_ID.txt +#grep -f ${SQANTIDIR}/Trem2_ID.txt ${ISO_GTF} > ${SQANTIDIR}/Trem2_filtered.gtf +#source activate nanopore; seqtk subseq ${ISO_FASTA} ${SQANTIDIR}/Trem2_ID.txt > ${SQANTIDIR}/Trem2_filtered.fa +#export ISO_CLASSFILE=${SQANTIDIR}/Trem2_filtered.txt +#export ISO_FASTA=${SQANTIDIR}/Trem2_filtered.fa +#export ISO_GTF=${SQANTIDIR}/Trem2_filtered.gtf + + +## --------------------------- + +## Parameters for long read proteogenomics pipeline +coding_score_cutoff=0.0 +min_junctions_after_stop_codon=2 +lower_kb=1 +upper_kb=4 +lower_cpm=3 + +## LOGEN root directory +LOGEN_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/scripts/LOGen +export PATH=$PATH:${LOGEN_ROOT}/merge_characterise_dataset +export PATH=$PATH:${LOGEN_ROOT}/proteomics/bin/ diff --git a/Reviews/2_proteogenomics.R b/Reviews/2_proteogenomics.R new file mode 100644 index 0000000..af0d843 --- /dev/null +++ b/Reviews/2_proteogenomics.R @@ -0,0 +1,90 @@ +#!/usr/bin/env Rscript +## ----------Script----------------- +## +## Author: Szi Kay Leung (S.K.Leung@exeter.ac.uk) +## proteogenonomics analysis following paper review +## process merged (ONT + Iso-Seq) targeted data after collapsing by protein ORF following G.Shenkyman pipeline +## re-determined reference isoform using most abundant transcript after collapsing by ORF +## differential transcript analysis at protein level +## -------------------------------- + +## ---------- packages ----------------- + +suppressMessages(library("utils")) + + +## ---------- config file ----------------- + +source("/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/Reviews/rTg4510_config.R") + + +## ---------- process data from pipeline ----------------- + +## data-wrangle orf_refined.tsv + # remove low quality ORF + # filter to target genes + # generate column of the number of transcripts collapsed by delimiting the pb_accs column + # output: a table of the pb_accs, base_acc (the representative collapsed isoform selected by G.Shenkyman pipeline) and numtxCollapsed +protein$t2p.collapse <- protein$t2p.collapse %>% filter(!orf_calling_confidence == "Low Quality ORF") %>% + filter(gene%in%TargetGene) %>% + mutate(numtxCollapsed = count.fields(textConnection(as.character(pb_accs)), sep = "|")) +char <- strsplit(as.character(protein$t2p.collapse $pb_accs), '|', fixed = T) +t2p.collapse.dissected <- data.frame(pb_accs=unlist(char), base_acc=rep(protein$t2p.collapse$base_acc, sapply(char, FUN=length))) +protein$t2p.collapse <- merge(t2p.collapse.dissected,protein$t2p.collapse[,c("base_acc","numtxCollapsed")]) + +## re-determine representative colalsped isoform: using ONT abundance (sum across all samples) rather than arbitrary (G.Shenkyman pipeline) + # take the ONT_sum read counts from the classification file + # max = grouping by the base_acc (i.e. the previously selected isoform), select the rows with the maximum ONT FL reads + # create an index to remap and create a "corrected_acc" column with the corresponding isoform that has the highest number of ONT FL reads +protein$t2p.collapse <- merge(protein$t2p.collapse,class.files$targ_filtered[,c("isoform","ONT_sum_FL")],by.x = "pb_accs", by.y = "isoform", all.x = TRUE) +max = protein$t2p.collapse %>% group_by(base_acc) %>% filter(ONT_sum_FL == max(ONT_sum_FL)) +idx <- match(protein$t2p.collapse$base_acc, max$base_acc) +protein$t2p.collapse = transform(protein$t2p.collapse, corrected_acc = ifelse(!is.na(idx), as.character(max$pb_accs[idx]), base_acc)) + +## include in the original classification file the collapsed PB.ID +class.files$targ_filtered <- merge(class.files$targ_filtered, protein$t2p.collapse[,c("pb_accs","numtxCollapsed","base_acc","corrected_acc")], by.x = "isoform", by.y = "pb_accs", all.x = TRUE) + +## Statistics +message("Total number of RNA transcripts: ", nrow(class.files$targ_filtered)) +message("Number of protein-coding RNA transcripts: ", nrow(class.files$targ_filtered[!is.na(class.files$targ_filtered$base_acc),])) +message("Number of non-protein-coding RNA transcripts: ", nrow(class.files$targ_filtered[is.na(class.files$targ_filtered$base_acc),])) + + +## ---------- differential expression analysis: proteogenomics ----------------- + +## 1. expression file +# aggregate sum by same peptide sequence +# datawrangle for input to run_DESeq2() +pFL <- class.files$targ_filtered %>% filter(!is.na(corrected_acc) & associated_gene %in% TargetGene) +ontpFL <- pFL %>% select(corrected_acc, contains("ONT"), -ONT_sum_FL) +isopFL <- pFL %>% select(corrected_acc, contains("Iso.Seq"), -Iso.Seq_sum_FL) +expressionFiles <- list( + ontProtein = aggregate(. ~ corrected_acc, ontpFL, sum) %>% tibble::column_to_rownames(., var = "corrected_acc"), + isoProtein = aggregate(. ~ corrected_acc, isopFL, sum) %>% tibble::column_to_rownames(., var = "corrected_acc") +) + +## 2. phenotype file +# matched number of samples across age for genotype analysis +phenotype$targ_matched_ont <- phenotype$targ_ont %>% filter(!sample %in% c("Q20","Q18")) +input <- list( + ontPhenotype = phenotype$targ_matched_ont %>% mutate(sample = paste0("ONT_",sample)), + isoPhenotype = phenotype$targ_iso %>% mutate(sample = paste0("Iso.Seq_",sample)) +) + + +## ---------- Creating DESeq2 object and analysis ----------------- + +ResTran <- list( + pisoWaldGenotype = run_DESeq2(test="Wald",expressionFiles$isoProtein,input$isoPhenotype,threshold=10,exprowname=NULL,controlname="CONTROL",design="case_control",interaction="On"), + pontWaldGenotype = run_DESeq2(test="Wald",expressionFiles$ontProtein,input$ontPhenotype,threshold=10,exprowname=NULL,controlname="CONTROL",design="case_control",interaction="On") +) + +annoResTran <- list( + pisoWaldGenotype = anno_DESeq2(ResTran$pisoWaldGenotype,class.files$targ_filtered,input$isoPhenotype,controlname="CONTROL",level="transcript",sig=0.1), + pontWaldGenotype = anno_DESeq2(ResTran$pontWaldGenotype,class.files$targ_filtered,input$ontPhenotype,controlname="CONTROL",level="transcript",sig=0.1) +) + + +## ---------- Output ----------------- +write.table(class.files$targ_filtered, paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"),sep="\t",quote = F) +saveRDS(annoResTran, file = paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) From 925eb19ccb6c2f1500799257d3541f4e80802fcc Mon Sep 17 00:00:00 2001 From: sl693 Date: Tue, 9 Jan 2024 17:50:20 +0000 Subject: [PATCH 03/29] Exploring ggtranscript visualisations of proteogenomics dataset: - Trem2 cryptic exon usage - Trem2 nmd vs non-nmd - Trem2 ES and implications - Mapt 4R vs 3R and expression --- .../rTg4510_proteomics.config | 1 + Reviews/3_post_proteogenomics.R | 262 ++++++++++++++++++ Reviews/rTg4510_config.R | 31 ++- 3 files changed, 293 insertions(+), 1 deletion(-) create mode 100644 Reviews/3_post_proteogenomics.R diff --git a/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config b/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config index afb091b..ec2e5f4 100644 --- a/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config +++ b/B_Targeted_Transcriptome/4_Proteogenomics/rTg4510_proteomics.config @@ -14,6 +14,7 @@ ## --------------------------- export NAME=all_iso_ont +export SPECIES=mm10 ## --------------------------- diff --git a/Reviews/3_post_proteogenomics.R b/Reviews/3_post_proteogenomics.R new file mode 100644 index 0000000..fe75861 --- /dev/null +++ b/Reviews/3_post_proteogenomics.R @@ -0,0 +1,262 @@ +class.files$ptarg_filtered <- SQANTI_class_preparation(paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"),"nstandard") +annopResTran <- readRDS(paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) + +protein$t2p.collapse <- protein$t2p.collapse %>% filter(!orf_calling_confidence == "Low Quality ORF") %>% + filter(gene%in%TargetGene) %>% + mutate(numtxCollapsed = count.fields(textConnection(as.character(pb_accs)), sep = "|")) + +## same protein sequence as LR.Trem2.54 +Trem2Iso <- data.frame( + Isoform = unlist(Trem2Iso <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + RNA_Transcript = class.files$ptarg_filtered %>% filter(corrected_acc == "PB.20818.54") %>% .[["isoform"]], + RNA_Protein = paste0(class.files$ptarg_filtered %>% filter(corrected_acc == "PB.20818.54") %>% .[["isoform"]],"_ORF_1") + )), + Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +) +Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) + +p1 <- ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(Trem2Iso$Isoform)), + selfDf = Trem2Iso, gene = "Trem2") + +## different protein sequence annotated to Trem2 +Trem2pID <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Trem2","corrected_acc"]) +unique(gtf$ptarg_merged %>% filter(transcript %in% Trem2pID) %>% .[["gene_id"]]) + + +/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2 + + +proteinclass.files <- read.table("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/4_proteogenomics/7_classified_protein/all_iso_ont.sqanti_protein_classification.tsv", sep = "\t", header = T) +nmd <- read.table("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/4_proteogenomics/7_classified_protein/all_iso_ont.classification_filtered.tsv", sep = "\t", header = T) +nmd %>% filter(pr_gene == "Trem2") +idx <- match(nmd$pb,class.files$ptarg_filtered$base_acc) +nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.files$ptarg_filtered$corrected_acc[idx]), pb)) +proteinclass.files + +nmdTrem2 <- nmd[nmd$is_nmd == "True" & nmd$pr_gene == "Trem2","corrected_acc"] +nonnmDTrem2 <- nmd[nmd$is_nmd == "False" & nmd$pr_gene == "Trem2","corrected_acc"] +Trem2Iso <- data.frame( + Isoform = unlist(Trem2Iso <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + RNA_TranscriptNMD = as.character(nmdTrem2), + RNA_Protein = unique(gtf$ptarg_merged %>% filter(transcript %in% nmdTrem2) %>% .[["gene_id"]]) + )), + Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +) +Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) + +NMD <- ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(Trem2Iso$Isoform)), + selfDf = Trem2Iso, gene = "Trem2") + + +Trem2Iso <- data.frame( + Isoform = unlist(Trem2Iso <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + RNA_TranscriptNMD = as.character(nonnmDTrem2), + RNA_Protein = unique(gtf$ptarg_merged %>% filter(transcript %in% nonnmDTrem2) %>% .[["gene_id"]]) + )), + Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +) +Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) + +nonNMD <- ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(Trem2Iso$Isoform)), + selfDf = Trem2Iso, gene = "Trem2") + + +Trem2Iso <- data.frame( + Isoform = unlist(Trem2Iso <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + NMD = as.character(nmdTrem2), + not_NMD = as.character(nonnmDTrem2) + )), + Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +) +Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) +ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(Trem2Iso$Isoform)), + selfDf = Trem2Iso, gene = "Trem2") + + +plot_trem2 <- function(transcript){ + p <- plot_transexp_overtime("Trem2",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",rank=3, + isoSpecific=c(transcript),setorder=c("CONTROL","CASE")) + + scale_colour_manual(values = c(wes_palette("Darjeeling1")[3],"#00BFC4","#7CAE00")) + return(p) +} +plot_trem2("PB.20818.260") +plot_trem2("PB.20818.274") +plot_trem2("PB.20818.379") +plot_trem2("PB.20818.382") +plot_trem2("PB.20818.547") + +## WT vs TG +TargetedDESeq$ontResTranAnno$wald$norm_counts <- TargetedDESeq$ontResTranAnno$wald$norm_counts %>% mutate(sampleID = word(sample,c(2),sep=fixed("_"))) + +WTTGTargetedCounts <- merge(TargetedDESeq$ontResTranAnno$wald$norm_counts %>% filter(sampleID %in% targetedTG) %>% group_by(isoform) %>% summarise(TGSum = sum(normalised_counts)), + TargetedDESeq$ontResTranAnno$wald$norm_counts %>% filter(sampleID %in% targetedWT) %>% group_by(isoform) %>% summarise(WTSum = sum(normalised_counts)) +) +WTTGTargetedCounts[WTTGTargetedCounts$TGSum == 0,] +WTTGTargetedCounts[WTTGTargetedCounts$WTSum == 0,] + + +### +ES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_Exonskipping_generaltab.csv") +ES4 <- ES %>% filter(Gencode_4 == "Yes" & Gencode_5 == "No") +ES5 <- ES %>% filter(Gencode_4 == "No" & Gencode_5 == "Yes") +ES4and5 <- ES %>% filter(Gencode_4 == "Yes" & Gencode_5 == "Yes") +Trem2Iso <- data.frame( + Isoform = unlist(Trem2Iso <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + ES_exon4 = as.character(unique(ES4$X)), + ES_exon4 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(ES4$X),) %>% .[["gene_id"]]), + ES_exon5 = as.character(unique(ES5$X)), + ES_exon5 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(ES5$X),) %>% .[["gene_id"]]), + ES_exon4and5 = as.character(unique(ES4and5$X)), + ES_exon4and5 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(ES4and5$X),) %>% .[["gene_id"]]) + )), + Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +) +Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) +ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(Trem2Iso$Isoform)), + selfDf = Trem2Iso, gene = "Trem2") + +## cryptic exon +# in frame or nmd and low-quality ORFs +NE <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_NE.csv") +Trem2Iso <- data.frame( + Isoform = unlist(Trem2Iso <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + Reference = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("54","62")))),) %>% .[["gene_id"]]), + NE = as.character(paste0("PB.20818.", c("80","192","573","1074"))), + NE = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("80","192","573","1074")))),) %>% .[["gene_id"]]), + NE2 = as.character(paste0("PB.20818.", c("493","362","1096"))), + NE2 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("493","362","1096")))),) %>% .[["gene_id"]]) + )), + Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +) +Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) +ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(Trem2Iso$Isoform)), + selfDf = Trem2Iso, gene = "Trem2") + + +### Mapt +# 2N4R vs 2N3R + +Maptprotein <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Mapt","corrected_acc"]) +MaptES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/Mapt/Stats/Mapt_general_exon_level.csv") +Mapt0N4R <- MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No") +Mapt1N4R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No") +Mapt2N4R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "No" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No") +Mapt2N3R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "No" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No") +Mapt1N3R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No") +Mapt0N3R <- MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No") + +MaptIso <- data.frame( + Isoform = unlist(MaptIso <- list( + Reference = c("ENSMUST00000106992.9","ENSMUST00000100347.10"), + Mapt0N4R = intersect(Maptprotein,Mapt0N4R$isoform), + Mapt1N4R = intersect(Maptprotein,Mapt1N4R$isoform), + Mapt2N4R = intersect(Maptprotein,Mapt2N4R$isoform), + Mapt0N3R = intersect(Maptprotein,Mapt0N3R$isoform), + Mapt1N3R = intersect(Maptprotein,Mapt1N3R$isoform), + Mapt2N3R = intersect(Maptprotein,Mapt2N3R$isoform) + #MaptProtein = unique(gtf$ptarg_merged %>% filter(transcript %in% intersect(Maptprotein,Mapt2N4R$isoform),) %>% .[["gene_id"]]) + )), + Category = rep(names(MaptIso), lengths(MaptIso)) +) +MaptIso$colour <- c(rep(NA,length(MaptIso$Category[MaptIso$Category != "DTE"]))) +ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(MaptIso$Isoform)), + selfDf = MaptIso, gene = "Mapt") + +MaptIso <- data.frame( + Isoform = unlist(MaptIso <- list( + Reference = c("ENSMUST00000106992.9","ENSMUST00000100347.10"), + Mapt = intersect(Maptprotein,Mapt0N4R$isoform), + MaptProtein = unique(gtf$ptarg_merged %>% filter(transcript %in% intersect(Maptprotein,Mapt0N4R$isoform),) %>% .[["gene_id"]]) + )), + Category = rep(names(MaptIso), lengths(MaptIso)) +) +MaptIso$colour <- c(rep(NA,length(MaptIso$Category[MaptIso$Category != "DTE"]))) +ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(MaptIso$Isoform)), + selfDf = MaptIso, gene = "Mapt") + +MaptIso <- data.frame( + Isoform = unlist(MaptIso <- list( + Reference = "ENSMUST00000106992.9", + Mapt = intersect(Maptprotein,Mapt2N3R$isoform), + MaptProtein = unique(gtf$ptarg_merged %>% filter(transcript %in% intersect(Maptprotein,Mapt2N3R$isoform),) %>% .[["gene_id"]]), + TGONly = "PB.8675.38019" + )), + Category = rep(names(MaptIso), lengths(MaptIso)) +) +MaptIso$colour <- c(rep(NA,length(MaptIso$Category[MaptIso$Category != "DTE"]))) +ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(MaptIso$Isoform)), + selfDf = MaptIso, gene = "Mapt") + + +plot_transexp_overtime("Mapt",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",rank=3, + isoSpecific=c("PB.8675.557"),setorder=c("CONTROL","CASE")) + + scale_colour_manual(values = c(wes_palette("Darjeeling1")[3],"#00BFC4","#7CAE00")) + +MaptSpec <- rbind(data.frame(Mapt = "2N4R", isoform = Mapt2N4R$isoform), + data.frame(Mapt = "0N4R", isoform = Mapt0N4R$isoform), + data.frame(Mapt = "1N4R", isoform = Mapt1N4R$isoform)) +Mapt3RSpec <- rbind( + data.frame(Mapt = "0N3R", isoform = Mapt0N3R$isoform), + data.frame(Mapt = "1N3R", isoform = Mapt1N3R$isoform)) + +TargetedDESeq$ontResTranAnno$wald$norm_counts %>% + filter(isoform %in% MaptSpec$isoform) %>% + left_join(., MaptSpec) %>% + group_by(isoform, group, time, Mapt) %>% + summarise(meanCounts = mean(normalised_counts)) %>% + ungroup()%>% + ggplot(., aes(x = group, y = log10(meanCounts), colour = as.factor(time))) + geom_boxplot() + + #geom_point(aes(fill = as.factor(time)), size = 1, shape = 21, position = position_jitterdodge()) + + facet_grid(~Mapt) +t.test(meanCounts ~ group, dat) + +TargetedDESeq$isoResTranAnno$wald$norm_counts %>% filter(isoform %in% Mapt2N4R$isoform) %>% + group_by(isoform, group, time) %>% + summarise(meanCounts = median(normalised_counts)) %>% + ungroup() %>% + ggplot(., aes(x = group, y = log10(meanCounts))) + geom_boxplot() + + + + +class.files$targ_filtered[class.files$targ_filtered$isoform %in% WTTGTargetedCounts[WTTGTargetedCounts$WTSum == 0,"isoform"],] + + +ratioplots <- function(){ + dat1 <- TargetedDESeq$ontResTranAnno$wald$norm_counts_all %>% filter(isoform %in% MaptSpec$isoform) %>% + mutate(normalised_counts = normalised_counts + 1) %>% + group_by(sample) %>% + summarise(meanCounts = mean(normalised_counts)) + + dat2 <- TargetedDESeq$ontResTranAnno$wald$norm_counts_all %>% filter(isoform %in% Mapt3RSpec$isoform) %>% + mutate(normalised_counts = normalised_counts + 1) %>% + group_by(sample) %>% + summarise(meanCountsnot = mean(normalised_counts)) + + dat <- merge(dat1,dat2) %>% mutate(Ratio = meanCounts/meanCountsnot) %>% mutate(sampleID = word(sample,c(2),sep=fixed("_"))) %>% + merge(., phenotype$targ_ont, by.x = "sampleID", by.y = "sample") + + p <- ggplot(dat, aes(x = group, y = Ratio)) + geom_boxplot() + + print(dat) + + return(p) +} + +ratioplots() + diff --git a/Reviews/rTg4510_config.R b/Reviews/rTg4510_config.R index ccd33a2..f5452b8 100644 --- a/Reviews/rTg4510_config.R +++ b/Reviews/rTg4510_config.R @@ -8,7 +8,18 @@ source(paste0(LOGEN,"/compare_datasets/dataset_identifer.R")) source(paste0(LOGEN, "/differential_analysis/plot_transcript_level.R")) source(paste0(LOGEN, "/aesthetics_basics_plots/pthemes.R")) source(paste0(LOGEN, "/differential_analysis/run_DESeq2.R")) +source(paste0(LOGEN, "/merge_characterise_dataset/run_ggtranscript.R")) +source(paste0(LOGEN, "/aesthetics_basics_plots/pthemes.R")) + +wholesamples <- c("K17","K18","K23","K24","L22","M21","O18","O23","Q20","Q21","S18","S23") +wholeTG <- c("K18","K24", "L22","O18","Q20","S18") +wholeWT <- setdiff(wholesamples, wholeTG) +whole2mos <- c("K17","M21","Q21","K18","O18","S18") +whole8mos <- setdiff(wholesamples, whole2mos) + +targetedWT <- c("K19","K23","K21","K17","S19","M21","O23","P19","Q21","S23","Q17","Q23") +targetedTG <- c("K18","K20","K24","L22","O18","O22","T20","Q20","S18","Q18","L18","T18") TargetGene <- c("Abca1","Sorl1","Mapt","Bin1","Tardbp","App","Abca7", "Ptk2b","Ank1","Fyn","Clu","Cd33","Fus","Picalm","Snca","Apoe","Trpa1","Rhbdf2","Trem2","Vgf") @@ -24,7 +35,10 @@ dirnames <- list( targ_output = paste0(root_dir, "rTg4510/01_figures_tables/Targeted_Transcriptome"), # proteogeonomics - protein = paste0(root_dir, "rTg4510/G_Merged_Targeted/4_proteogenomics/6_refined_database") + protein = paste0(root_dir, "rTg4510/G_Merged_Targeted/4_proteogenomics/6_refined_database"), + + # reference + references = paste0(root_dir,"reference/annotation") ) ## ------------- Phenotype files ------------------- @@ -76,3 +90,18 @@ TargetedDESeq$ontResTranAnno$wald$norm_counts <- merge(TargetedDESeq$ontResTranA protein = list( t2p.collapse = read.table(paste0(dirnames$protein,"/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T) ) + + +## -------------------------- +# gtf +gtf = list( + targ_merged = rtracklayer::import(paste0(dirnames$targ_root,"/2_sqanti3/all_iso_ont_collapsed.filtered_counts_filtered.gtf")), + ptarg_merged = rtracklayer::import(paste0(dirnames$targ_root,"/4_proteogenomics/5_calledOrfs/all_iso_ont.gtf")), + ref_target = rtracklayer::import(paste0(dirnames$references,"/gencode.M22.annotation.20Targets.gtf")) +) +gtf <- lapply(gtf, function(x) as.data.frame(x)) +gtf$ptarg_merged <- gtf$ptarg_merged %>% mutate(transcript = word(transcript_id,c(1),sep=fixed("_"))) + +gtf$targ_merged <- rbind(gtf$targ_merged[,c("seqnames","strand","start","end","type","transcript_id","gene_id")], + gtf$ptarg_merged[,c("seqnames","strand","start","end","type","transcript_id","gene_id")], + gtf$ref_target[,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) From 406ca18fd0318ac6c04a54372e1bd8ddce766b50 Mon Sep 17 00:00:00 2001 From: sl693 Date: Wed, 10 Jan 2024 19:41:47 +0000 Subject: [PATCH 04/29] Figs in neat - housekeeping genes - Mapt 4R vs 3R tau isoforms - Trem2 --- Reviews/1_reviewAnalysis.R | 32 ++- Reviews/2_proteogenomics.R | 1 + Reviews/3_post_proteogenomics.R | 435 +++++++++++++++----------------- Reviews/rTg4510_config.R | 12 +- 4 files changed, 240 insertions(+), 240 deletions(-) diff --git a/Reviews/1_reviewAnalysis.R b/Reviews/1_reviewAnalysis.R index 24ebc4d..0e7a825 100644 --- a/Reviews/1_reviewAnalysis.R +++ b/Reviews/1_reviewAnalysis.R @@ -12,6 +12,9 @@ library("dplyr") library("stringr") library("cowplot") library("data.table") +suppressMessages(library("gridExtra")) +suppressMessages(library("grid")) + options(scipen = 999) ## --------------------------- find reference genes @@ -24,21 +27,28 @@ class.files$targ_all[class.files$targ_all$associated_gene %in% housekeepingGenes # gene expression plots +hkdf <- class.files$glob_iso[class.files$glob_iso$associated_gene %in% housekeepingGenes,] %>% arrange(associated_gene) HKGeneExpPlots <- list() -PbGeneId = unique(word(subset(class.files$glob_iso, associated_gene %in% housekeepingGenes)[["isoform"]],c(2),sep=fixed("."))) +PbGeneId = unique(word(hkdf$isoform,c(2),sep=fixed("."))) for(i in PbGeneId){ - HKGeneExpPlots[[i]] <- plot_trans_exp_individual_overtime(i,GlobalDESeq$resGeneAnno$wald$norm_counts,type="gene") + HKGeneExpPlots[[i]] <- plot_trans_exp_individual_overtime(i,GlobalDESeq$resGeneAnno$wald$norm_counts,type="gene") + labs(x = NULL, y = NULL) } -names(HKGeneExpPlots) <- housekeepingGenes +names(HKGeneExpPlots) <- unique(hkdf$associated_gene) # most abundant top-ranked expression plot HKTransExpPlots <- list() -for(i in housekeepingGenes){ - HKTransExpPlots [[i]] <- plot_transexp_overtime(i,GlobalDESeq$resTranAnno$wald$norm_counts,show="toprank",rank=3,setorder=c("CONTROL","CASE")) +for(i in unique(hkdf$associated_gene)){ + HKTransExpPlots [[i]] <- plot_transexp_overtime(i,GlobalDESeq$resTranAnno$wald$norm_counts_all,show="toprank",rank=3,setorder=c("CONTROL","CASE")) + + labs(x = NULL, y = NULL) + theme(legend.position = "None") } -plot_grid(plotlist = HKGeneExpPlots) -plot_grid(plotlist = HKTransExpPlots) +HKGeneExpPlotsList <- plot_grid(plotlist = HKGeneExpPlots) +HKTransExpPlotsList <- plot_grid(plotlist = HKTransExpPlots) +y.grob <- textGrob("Normalized counts", gp=gpar(fontsize=18), rot=90) +x.grob <- textGrob("Age (months)", gp=gpar(fontsize=18)) +pHKGeneExpPlotsList <- grid.arrange(arrangeGrob(HKGeneExpPlotsList, left = y.grob, bottom = x.grob)) +pHKTransExpPlotsList <- grid.arrange(arrangeGrob(HKTransExpPlotsList, left = y.grob, bottom = x.grob)) + ## --------------------------- correlation @@ -92,3 +102,11 @@ meanNumNovel <- reshape2::melt(result , variable.name = "sample", value.name = " group_by(associated_gene) %>% summarise(mean = mean(num_novel_iso)) merge(meanGeneExpression,meanNumNovel, by = "associated_gene") %>% ggplot(., aes(x = mean_gene_counts, y = mean)) + geom_point() + + +## --------------------------- output (pdf) + +#pdf(paste0(dirnames$targ_output,"/housekeepingGenes.pdf"), width = 14, height = 17) +pdf("housekeepingGenes.pdf", width = 12, height = 14) +plot_grid(pHKGeneExpPlotsList,pHKTransExpPlotsList,nrow=2, labels = c("A","B"), scale = 0.95) +dev.off() \ No newline at end of file diff --git a/Reviews/2_proteogenomics.R b/Reviews/2_proteogenomics.R index af0d843..b4e2cea 100644 --- a/Reviews/2_proteogenomics.R +++ b/Reviews/2_proteogenomics.R @@ -87,4 +87,5 @@ annoResTran <- list( ## ---------- Output ----------------- write.table(class.files$targ_filtered, paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"),sep="\t",quote = F) +write.table(protein$t2p.collapse, paste0(dirnames$protein,"/all_iso_ont_orf_refined_collapsed.tsv"),sep="\t",quote = F) saveRDS(annoResTran, file = paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) diff --git a/Reviews/3_post_proteogenomics.R b/Reviews/3_post_proteogenomics.R index fe75861..171608c 100644 --- a/Reviews/3_post_proteogenomics.R +++ b/Reviews/3_post_proteogenomics.R @@ -1,89 +1,213 @@ -class.files$ptarg_filtered <- SQANTI_class_preparation(paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"),"nstandard") -annopResTran <- readRDS(paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) - -protein$t2p.collapse <- protein$t2p.collapse %>% filter(!orf_calling_confidence == "Low Quality ORF") %>% - filter(gene%in%TargetGene) %>% - mutate(numtxCollapsed = count.fields(textConnection(as.character(pb_accs)), sep = "|")) - -## same protein sequence as LR.Trem2.54 -Trem2Iso <- data.frame( - Isoform = unlist(Trem2Iso <- list( - Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), - RNA_Transcript = class.files$ptarg_filtered %>% filter(corrected_acc == "PB.20818.54") %>% .[["isoform"]], - RNA_Protein = paste0(class.files$ptarg_filtered %>% filter(corrected_acc == "PB.20818.54") %>% .[["isoform"]],"_ORF_1") - )), - Category = rep(names(Trem2Iso), lengths(Trem2Iso)) -) -Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) +#!/usr/bin/env Rscript +## ----------Script----------------- +## +## Author: Szi Kay Leung (S.K.Leung@exeter.ac.uk) +## Mapt 4R vs 3R +## Trem2 proteogenomics characterisation +## -------------------------------- + +suppressMessages(library("cowplot")) + +## ---------- config file ----------------- + +source("/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/Reviews/rTg4510_config.R") + +generalggTranPlots <- function(isolist, inputgtf, classfiles, gene, cpat = NULL, species = NULL){ + IsoDf <- data.frame( + Isoform = unlist(IsoDf <- isolist), + Category = rep(names(IsoDf), lengths(IsoDf)) + ) + IsoDf$colour <- c(rep(NA,length(IsoDf$Category[IsoDf$Category != "DTE"]))) + p <- ggTranPlots(inputgtf=inputgtf,classfiles=classfiles, + isoList = c(as.character(IsoDf$Isoform)), + selfDf = IsoDf, gene = gene, cpat = cpat, species = species) + return(p) +} -p1 <- ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(Trem2Iso$Isoform)), - selfDf = Trem2Iso, gene = "Trem2") -## different protein sequence annotated to Trem2 -Trem2pID <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Trem2","corrected_acc"]) -unique(gtf$ptarg_merged %>% filter(transcript %in% Trem2pID) %>% .[["gene_id"]]) +## ---------- input from 2_proteogenomics.R ----------------- +# original transcript classification file with additional column of the number of collapsed transcripts by ORF +# col: corrected_acc = representative isoform after collapsing by ORF +class.files$ptarg_filtered <- SQANTI_class_preparation(paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"),"nstandard") +protein$t2p.collapse <- read.table(paste0(dirnames$protein,"/all_iso_ont_orf_refined_collapsed.tsv")) +annopResTran <- readRDS(paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) -/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2 - +dirnames$protein <- paste0(dirnames$targ_root,"/4_proteogenomics/7_classified_protein/") -proteinclass.files <- read.table("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/4_proteogenomics/7_classified_protein/all_iso_ont.sqanti_protein_classification.tsv", sep = "\t", header = T) -nmd <- read.table("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/4_proteogenomics/7_classified_protein/all_iso_ont.classification_filtered.tsv", sep = "\t", header = T) -nmd %>% filter(pr_gene == "Trem2") +class.files$protein <- read.table(paste0(dirnames$protein,"all_iso_ont.sqanti_protein_classification.tsv", sep = "\t", header = T)) +nmd <- read.table(paste0(dirnames$protein, "all_iso_ont.classification_filtered.tsv"), sep = "\t", header = T) idx <- match(nmd$pb,class.files$ptarg_filtered$base_acc) -nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.files$ptarg_filtered$corrected_acc[idx]), pb)) -proteinclass.files - -nmdTrem2 <- nmd[nmd$is_nmd == "True" & nmd$pr_gene == "Trem2","corrected_acc"] -nonnmDTrem2 <- nmd[nmd$is_nmd == "False" & nmd$pr_gene == "Trem2","corrected_acc"] -Trem2Iso <- data.frame( - Isoform = unlist(Trem2Iso <- list( - Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), - RNA_TranscriptNMD = as.character(nmdTrem2), - RNA_Protein = unique(gtf$ptarg_merged %>% filter(transcript %in% nmdTrem2) %>% .[["gene_id"]]) - )), - Category = rep(names(Trem2Iso), lengths(Trem2Iso)) -) -Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) +nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.files$ptarg_filtered$corrected_acc[idx]), NA)) -NMD <- ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(Trem2Iso$Isoform)), - selfDf = Trem2Iso, gene = "Trem2") +## ---------- WT vs TG ----------------- -Trem2Iso <- data.frame( - Isoform = unlist(Trem2Iso <- list( - Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), - RNA_TranscriptNMD = as.character(nonnmDTrem2), - RNA_Protein = unique(gtf$ptarg_merged %>% filter(transcript %in% nonnmDTrem2) %>% .[["gene_id"]]) - )), - Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +## identify transcripts that are unique to WT and TG mice using normalized expression counts (ONT) +# summarised the normalised counts by group and isoform +TargetedDESeq$ontResTranAnno$wald$norm_counts <- TargetedDESeq$ontResTranAnno$wald$norm_counts %>% mutate(sampleID = word(sample,c(2),sep=fixed("_"))) +WTTGTargetedCounts <- merge(TargetedDESeq$ontResTranAnno$wald$norm_counts %>% filter(sampleID %in% targetedTG) %>% group_by(isoform) %>% summarise(TGSum = sum(normalised_counts)), + TargetedDESeq$ontResTranAnno$wald$norm_counts %>% filter(sampleID %in% targetedWT) %>% group_by(isoform) %>% summarise(WTSum = sum(normalised_counts)) ) -Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) -nonNMD <- ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(Trem2Iso$Isoform)), - selfDf = Trem2Iso, gene = "Trem2") +# subset classification file based on the unique transcript +class.files$targ_filtered_WTUnique <- class.files$targ_filtered[class.files$targ_filtered$isoform %in% WTTGTargetedCounts[WTTGTargetedCounts$WTSum == 0,"isoform"],] +class.files$targ_filtered_TGUnique <- class.files$targ_filtered[class.files$targ_filtered$isoform %in% WTTGTargetedCounts[WTTGTargetedCounts$TGSum == 0,"isoform"],] + + +## ---------- Mapt ----------------- + +# identification of Mapt Transcripts by exon skipping of original exon 2 and 3, 9, 10, 11, 12 +# FICLE Gencode_13 = alternative first exon +# FICLE Gencode_3, Gencode_4 = origianl exon 2, 3; Gencode_11,_12,_14,15 = original exons 9 - 12 +# Yes = Exon skipped; No = Exon present and not skipped +MaptRTranscripts <- list( + Ref = list(isoform = c("ENSMUST00000106992.9","ENSMUST00000100347.10")), + Mapt0N3R = MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No"), + Mapt0N4R = MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No"), + Mapt1N3R = MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No"), + Mapt1N4R = MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No"), + Mapt2N3R = MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "No" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No"), + Mapt2N4R = MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "No" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No") +) +MaptRTranscripts <- lapply(MaptRTranscripts, function(x) as.character(x[["isoform"]])) +names(MaptRTranscripts) <- str_remove(names(MaptRTranscripts),"Mapt") +# create a dataframe for downstream subsetting +MaptRTranscriptsdf <- do.call(rbind, MaptRTranscripts) %>% reshape2::melt() %>% select(Var1, value) %>% `colnames<-`(c("MaptType", "isoform")) %>% + mutate(R = ifelse(grepl("3R", MaptType), "3R","4R")) + +# ggtranscript of Mapt transcripts with highlights of N and R regions +pMaptRTranscripts <- generalggTranPlots(MaptRTranscripts, gtf$targ_merged, class.files$targ_filtered, "Mapt") + + annotate("rect", xmin = c(104286000, 104309000), xmax = c(104291000, 104325000), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) + +# ggtranscript of Mapt transcripts with respective ORF +MaptRProtein <- lapply(MaptRTranscripts, function(x) unique(gtf$ptarg_merged %>% filter(transcript %in% x,) %>% .[["gene_id"]])) +MaptRProtein$Ref <- c("ENSMUST00000106992.9","ENSMUST00000100347.10") +pMaptRProtein <- generalggTranPlots(MaptRProtein, gtf$targ_merged, class.files$targ_filtered, "Mapt", cpat = protein$cpat, species = "mouse") + + annotate("rect", xmin = c(104286000, 104309000), xmax = c(104291000, 104325000), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) + +# expression of Mapt transcripts (ONT normalised counts) +pMaptRTrascriptExp <- TargetedDESeq$ontResTranAnno$wald$norm_counts_all %>% + merge(., MaptRTranscriptsdf, by = "isoform", all.y = TRUE) %>% + filter(MaptType != "Reference") %>% + mutate(group = factor(ifelse(group == "CONTROL","WT","TG"), levels = c("WT","TG"))) %>% + mutate(age = as.factor(time)) %>% + mutate(MaptType = str_remove(MaptType,"Mapt")) %>% + group_by(isoform, group, age, MaptType, R) %>% + summarise(meanCounts = mean(normalised_counts)) %>% + ungroup() %>% + ggplot(., aes(x = group, y = log10(meanCounts), colour = age)) + geom_boxplot() + + geom_point(aes(fill = age), size = 1, shape = 21, position = position_jitterdodge()) + + facet_nested(~R + MaptType, nest_line = element_line(linetype = 2)) + + theme(strip.background = element_blank(), + ggh4x.facet.nestline = element_line(colour = "grey")) + mytheme + + labs(x = "Genotype") + theme(legend.position = "top") + + scale_colour_manual(values = c("black","#CFCFCF","#777777","red"), name = "Age (months)") + + scale_fill_manual(values = c("black","#CFCFCF","#777777","red"), name = "Age (months)") + +# ratio of Mapt 4R vs 3R transcript by mean expression +meanMaptExp <- function(normcounts, isoList){ + dat <- normcounts%>% filter(isoform %in% isoList) %>% + # + 1 as 0 for many of the isoforms + mutate(normalised_counts = normalised_counts + 1) %>% + # take the average of all the normalised counts of a subset of isoforms for each sample + group_by(sample) %>% + summarise(meanCounts = mean(normalised_counts)) + return(dat) +} +# ratio of mean 4R isoform expression/ mean 3R isoform expresssion for each sample +dat <- merge(meanMaptExp(TargetedDESeq$ontResTranAnno$wald$norm_counts_all,MaptRTranscriptsdf[MaptRTranscriptsdf$R == "4R","isoform"]), + meanMaptExp(TargetedDESeq$ontResTranAnno$wald$norm_counts_all,MaptRTranscriptsdf[MaptRTranscriptsdf$R == "3R","isoform"]), by = "sample") %>% + mutate(Ratio = meanCounts.x/meanCounts.y) %>% mutate(sampleID = word(sample,c(2),sep=fixed("_"))) %>% + merge(., phenotype$targ_ont, by.x = "sampleID", by.y = "sample") %>% + mutate(group = factor(ifelse(group == "CONTROL","WT","TG"), levels = c("WT","TG"))) +# plot of ratio across age and genotype +pMaptRTrascriptRatio1 <- ggplot(dat, aes(x = as.factor(time), y = Ratio, colour = group)) + geom_point() + mytheme + + labs(x = "Age (months)", y = "Ratio") + theme(legend.position = "right") + + scale_colour_manual(values = c(label_colour("WT"),"red"), name = "Genotype") + + stat_summary(data=dat, aes(x=as.factor(time), y=Ratio, group=group), fun ="mean", geom="line", linetype = "dotted") +# plot of ratio across genotype +pMaptRTrascriptRatio2 <- ggplot(dat, aes(x = group, y = Ratio)) + geom_boxplot() + mytheme + + labs(x = "Genotype", y = "Ratio") + + geom_point() + + +## ---------- Trem2 ----------------- + +# visaulisation of Trem2 transcripts with same ORF LR.Trem2.54 +Trem2ProteinSameORF <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + `RNA Transcript` = class.files$ptarg_filtered %>% filter(corrected_acc == "PB.20818.54") %>% .[["isoform"]], + `RNA Isoform` = paste0(class.files$ptarg_filtered %>% filter(corrected_acc == "PB.20818.54") %>% .[["isoform"]],"_ORF_1") +) +pTrem2ProteinSameORF <- generalggTranPlots(Trem2ProteinSameORF, gtf$targ_merged, class.files$targ_filtered, "Trem2") -Trem2Iso <- data.frame( - Isoform = unlist(Trem2Iso <- list( - Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), - NMD = as.character(nmdTrem2), - not_NMD = as.character(nonnmDTrem2) - )), - Category = rep(names(Trem2Iso), lengths(Trem2Iso)) +# different protein sequence annotated to Trem2 +Trem2pID <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Trem2","corrected_acc"]) +pTremFinal <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + `RNA Transcript` = Trem2pID +) %>% generalggTranPlots(., gtf$targ_merged, class.files$targ_filtered, "Trem2") +pTremFinalProtein <- list( + Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + `RNA Isoform` = unique(gtf$ptarg_merged %>% filter(transcript %in% Trem2pID) %>% .[["gene_id"]]) +) %>% generalggTranPlots(., gtf$targ_merged, class.files$targ_filtered, "Trem2", protein$cpat, "mouse") + +# exon skipping +Trem2ESTranscripts <- list( + Ref = list(X = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"])), + `E3-E4+` = Trem2ES %>% filter(Gencode_4 == "Yes" & Gencode_5 == "No"), + `E3+E4-` = Trem2ES %>% filter(Gencode_4 == "No" & Gencode_5 == "Yes"), + `E3-E4-` = Trem2ES %>% filter(Gencode_4 == "Yes" & Gencode_5 == "Yes") +) +Trem2ESTranscripts <- lapply(Trem2ESTranscripts, function(x) as.character(x[["X"]])) +pTrem2ESTranscripts <- generalggTranPlots(Trem2ESTranscripts, gtf$targ_merged, class.files$targ_filtered, "Trem2") + + annotate("rect", xmin = c(48351000), xmax = c(48352000), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) +Trem2ESProtein <- lapply(Trem2ESTranscripts , function(x) unique(gtf$ptarg_merged %>% filter(transcript %in% x,) %>% .[["gene_id"]])) +Trem2ESProtein$Ref <- unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]) +pTrem2ESProtein <- generalggTranPlots(Trem2ESProtein, gtf$targ_merged, class.files$targ_filtered, "Trem2", cpat = protein$cpat, species = "mouse") + + annotate("rect", xmin = c(48351000), xmax = c(48352000), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) + +# cryptic exon +# in frame or nmd and low-quality ORFs +Trem2CE <- list( + Reference = c("ENSMUST00000024791.14","ENSMUST00000113237.3"), + `NE - not NMD` = as.character(paste0("PB.20818.", c("80","192","573","1074"))), + `NE - NMD` = as.character(paste0("PB.20818.", c("493","362","1096"))) +) %>% generalggTranPlots(., gtf$targ_merged, class.files$targ_filtered, "Trem2") + + annotate("rect", xmin = c(48347000), xmax = c(48347400), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) + +Trem2CEProtein <- list( + Reference = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("54","62")))),) %>% .[["gene_id"]]), + `NE - not NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("80","192","573","1074")))),) %>% .[["gene_id"]]), + `NE - NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("493","362","1096")))),) %>% .[["gene_id"]]) +)%>% generalggTranPlots(., gtf$targ_merged, class.files$targ_filtered,"Trem2",cpat = protein$cpat, species = "mouse") + + annotate("rect", xmin = c(48347000), xmax = c(48347400), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) + + +# nonsense-mediated decay +nmdList <- list( + Trem2True = nmd[nmd$is_nmd == "True" & nmd$pr_gene == "Trem2","corrected_acc"], + Trem2False = nmd[nmd$is_nmd == "False" & nmd$pr_gene == "Trem2","corrected_acc"] +) +Trem2nmd <- list( + Ref = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + `Transcript NMD` = as.character(nmdList$Trem2True), + `Isoform NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% nmdList$Trem2True) %>% .[["gene_id"]]) +) +Trem2notnmd <- list( + Ref = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), + `Transcript Not NMD` = as.character(nmdList$Trem2False), + `Protein Not NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% nmdList$Trem2False) %>% .[["gene_id"]]) ) -Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) -ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(Trem2Iso$Isoform)), - selfDf = Trem2Iso, gene = "Trem2") +generalggTranPlots(Trem2nmd, gtf$targ_merged, class.files$targ_filtered, "Trem2") +generalggTranPlots(Trem2notnmd, gtf$targ_merged, class.files$targ_filtered, "Trem2") plot_trem2 <- function(transcript){ p <- plot_transexp_overtime("Trem2",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",rank=3, - isoSpecific=c(transcript),setorder=c("CONTROL","CASE")) + + isoSpecific=c(transcript),setorder=c("CONTROL","CASE")) + scale_colour_manual(values = c(wes_palette("Darjeeling1")[3],"#00BFC4","#7CAE00")) return(p) } @@ -93,170 +217,19 @@ plot_trem2("PB.20818.379") plot_trem2("PB.20818.382") plot_trem2("PB.20818.547") -## WT vs TG -TargetedDESeq$ontResTranAnno$wald$norm_counts <- TargetedDESeq$ontResTranAnno$wald$norm_counts %>% mutate(sampleID = word(sample,c(2),sep=fixed("_"))) - -WTTGTargetedCounts <- merge(TargetedDESeq$ontResTranAnno$wald$norm_counts %>% filter(sampleID %in% targetedTG) %>% group_by(isoform) %>% summarise(TGSum = sum(normalised_counts)), - TargetedDESeq$ontResTranAnno$wald$norm_counts %>% filter(sampleID %in% targetedWT) %>% group_by(isoform) %>% summarise(WTSum = sum(normalised_counts)) -) -WTTGTargetedCounts[WTTGTargetedCounts$TGSum == 0,] -WTTGTargetedCounts[WTTGTargetedCounts$WTSum == 0,] - - -### -ES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_Exonskipping_generaltab.csv") -ES4 <- ES %>% filter(Gencode_4 == "Yes" & Gencode_5 == "No") -ES5 <- ES %>% filter(Gencode_4 == "No" & Gencode_5 == "Yes") -ES4and5 <- ES %>% filter(Gencode_4 == "Yes" & Gencode_5 == "Yes") -Trem2Iso <- data.frame( - Isoform = unlist(Trem2Iso <- list( - Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), - ES_exon4 = as.character(unique(ES4$X)), - ES_exon4 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(ES4$X),) %>% .[["gene_id"]]), - ES_exon5 = as.character(unique(ES5$X)), - ES_exon5 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(ES5$X),) %>% .[["gene_id"]]), - ES_exon4and5 = as.character(unique(ES4and5$X)), - ES_exon4and5 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(ES4and5$X),) %>% .[["gene_id"]]) - )), - Category = rep(names(Trem2Iso), lengths(Trem2Iso)) -) -Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) -ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(Trem2Iso$Isoform)), - selfDf = Trem2Iso, gene = "Trem2") - -## cryptic exon -# in frame or nmd and low-quality ORFs -NE <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_NE.csv") -Trem2Iso <- data.frame( - Isoform = unlist(Trem2Iso <- list( - Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Trem2" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), - Reference = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("54","62")))),) %>% .[["gene_id"]]), - NE = as.character(paste0("PB.20818.", c("80","192","573","1074"))), - NE = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("80","192","573","1074")))),) %>% .[["gene_id"]]), - NE2 = as.character(paste0("PB.20818.", c("493","362","1096"))), - NE2 = unique(gtf$ptarg_merged %>% filter(transcript %in% unique(unique(paste0("PB.20818.", c("493","362","1096")))),) %>% .[["gene_id"]]) - )), - Category = rep(names(Trem2Iso), lengths(Trem2Iso)) -) -Trem2Iso$colour <- c(rep(NA,length(Trem2Iso$Category[Trem2Iso$Category != "DTE"]))) -ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(Trem2Iso$Isoform)), - selfDf = Trem2Iso, gene = "Trem2") - - -### Mapt -# 2N4R vs 2N3R - -Maptprotein <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Mapt","corrected_acc"]) -MaptES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/Mapt/Stats/Mapt_general_exon_level.csv") -Mapt0N4R <- MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No") -Mapt1N4R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No") -Mapt2N4R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "No" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No") -Mapt2N3R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "No" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No") -Mapt1N3R <- MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No") -Mapt0N3R <- MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No") - -MaptIso <- data.frame( - Isoform = unlist(MaptIso <- list( - Reference = c("ENSMUST00000106992.9","ENSMUST00000100347.10"), - Mapt0N4R = intersect(Maptprotein,Mapt0N4R$isoform), - Mapt1N4R = intersect(Maptprotein,Mapt1N4R$isoform), - Mapt2N4R = intersect(Maptprotein,Mapt2N4R$isoform), - Mapt0N3R = intersect(Maptprotein,Mapt0N3R$isoform), - Mapt1N3R = intersect(Maptprotein,Mapt1N3R$isoform), - Mapt2N3R = intersect(Maptprotein,Mapt2N3R$isoform) - #MaptProtein = unique(gtf$ptarg_merged %>% filter(transcript %in% intersect(Maptprotein,Mapt2N4R$isoform),) %>% .[["gene_id"]]) - )), - Category = rep(names(MaptIso), lengths(MaptIso)) -) -MaptIso$colour <- c(rep(NA,length(MaptIso$Category[MaptIso$Category != "DTE"]))) -ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(MaptIso$Isoform)), - selfDf = MaptIso, gene = "Mapt") - -MaptIso <- data.frame( - Isoform = unlist(MaptIso <- list( - Reference = c("ENSMUST00000106992.9","ENSMUST00000100347.10"), - Mapt = intersect(Maptprotein,Mapt0N4R$isoform), - MaptProtein = unique(gtf$ptarg_merged %>% filter(transcript %in% intersect(Maptprotein,Mapt0N4R$isoform),) %>% .[["gene_id"]]) - )), - Category = rep(names(MaptIso), lengths(MaptIso)) -) -MaptIso$colour <- c(rep(NA,length(MaptIso$Category[MaptIso$Category != "DTE"]))) -ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(MaptIso$Isoform)), - selfDf = MaptIso, gene = "Mapt") - -MaptIso <- data.frame( - Isoform = unlist(MaptIso <- list( - Reference = "ENSMUST00000106992.9", - Mapt = intersect(Maptprotein,Mapt2N3R$isoform), - MaptProtein = unique(gtf$ptarg_merged %>% filter(transcript %in% intersect(Maptprotein,Mapt2N3R$isoform),) %>% .[["gene_id"]]), - TGONly = "PB.8675.38019" - )), - Category = rep(names(MaptIso), lengths(MaptIso)) -) -MaptIso$colour <- c(rep(NA,length(MaptIso$Category[MaptIso$Category != "DTE"]))) -ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, - isoList = c(as.character(MaptIso$Isoform)), - selfDf = MaptIso, gene = "Mapt") - - -plot_transexp_overtime("Mapt",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",rank=3, - isoSpecific=c("PB.8675.557"),setorder=c("CONTROL","CASE")) + - scale_colour_manual(values = c(wes_palette("Darjeeling1")[3],"#00BFC4","#7CAE00")) - -MaptSpec <- rbind(data.frame(Mapt = "2N4R", isoform = Mapt2N4R$isoform), - data.frame(Mapt = "0N4R", isoform = Mapt0N4R$isoform), - data.frame(Mapt = "1N4R", isoform = Mapt1N4R$isoform)) -Mapt3RSpec <- rbind( - data.frame(Mapt = "0N3R", isoform = Mapt0N3R$isoform), - data.frame(Mapt = "1N3R", isoform = Mapt1N3R$isoform)) - -TargetedDESeq$ontResTranAnno$wald$norm_counts %>% - filter(isoform %in% MaptSpec$isoform) %>% - left_join(., MaptSpec) %>% - group_by(isoform, group, time, Mapt) %>% - summarise(meanCounts = mean(normalised_counts)) %>% - ungroup()%>% - ggplot(., aes(x = group, y = log10(meanCounts), colour = as.factor(time))) + geom_boxplot() + - #geom_point(aes(fill = as.factor(time)), size = 1, shape = 21, position = position_jitterdodge()) + - facet_grid(~Mapt) -t.test(meanCounts ~ group, dat) -TargetedDESeq$isoResTranAnno$wald$norm_counts %>% filter(isoform %in% Mapt2N4R$isoform) %>% - group_by(isoform, group, time) %>% - summarise(meanCounts = median(normalised_counts)) %>% - ungroup() %>% - ggplot(., aes(x = group, y = log10(meanCounts))) + geom_boxplot() +## ---------- output (pdf) ----------------- +pdf(paste0(dirnames$targ_output,"/MaptIsoforms.pdf"), width = 14, height = 17) +#pdf("MaptIsoforms.pdf", width = 14, height = 17) +plot_grid(plot_grid(pMaptRTranscripts,pMaptRProtein, labels = c("i","ii")), + plot_grid(pMaptRTrascriptExp), + plot_grid(pMaptRTrascriptRatio2,pMaptRTrascriptRatio1,rel_widths = c(0.4,0.6),labels = c("i","ii")), + ncol=1, rel_heights = c(0.5,0.3,0.2), labels = c("A","B","C"), scale = 0.95) +dev.off() - -class.files$targ_filtered[class.files$targ_filtered$isoform %in% WTTGTargetedCounts[WTTGTargetedCounts$WTSum == 0,"isoform"],] - - -ratioplots <- function(){ - dat1 <- TargetedDESeq$ontResTranAnno$wald$norm_counts_all %>% filter(isoform %in% MaptSpec$isoform) %>% - mutate(normalised_counts = normalised_counts + 1) %>% - group_by(sample) %>% - summarise(meanCounts = mean(normalised_counts)) - - dat2 <- TargetedDESeq$ontResTranAnno$wald$norm_counts_all %>% filter(isoform %in% Mapt3RSpec$isoform) %>% - mutate(normalised_counts = normalised_counts + 1) %>% - group_by(sample) %>% - summarise(meanCountsnot = mean(normalised_counts)) - - dat <- merge(dat1,dat2) %>% mutate(Ratio = meanCounts/meanCountsnot) %>% mutate(sampleID = word(sample,c(2),sep=fixed("_"))) %>% - merge(., phenotype$targ_ont, by.x = "sampleID", by.y = "sample") - - p <- ggplot(dat, aes(x = group, y = Ratio)) + geom_boxplot() - - print(dat) - - return(p) -} - -ratioplots() - +plot_grid(pTrem2ProteinSameORF) +plot_grid(pTremFinal,pTremFinalProtein, nrow=1) +plot_grid(pTrem2ESTranscripts, pTrem2ESProtein, nrow = 1) +plot_grid(pTrem2CE,pTrem2CEProtein,nrow=1) \ No newline at end of file diff --git a/Reviews/rTg4510_config.R b/Reviews/rTg4510_config.R index f5452b8..5cefec9 100644 --- a/Reviews/rTg4510_config.R +++ b/Reviews/rTg4510_config.R @@ -35,7 +35,7 @@ dirnames <- list( targ_output = paste0(root_dir, "rTg4510/01_figures_tables/Targeted_Transcriptome"), # proteogeonomics - protein = paste0(root_dir, "rTg4510/G_Merged_Targeted/4_proteogenomics/6_refined_database"), + protein = paste0(root_dir, "rTg4510/G_Merged_Targeted/4_proteogenomics/"), # reference references = paste0(root_dir,"reference/annotation") @@ -88,7 +88,8 @@ TargetedDESeq$ontResTranAnno$wald$norm_counts <- merge(TargetedDESeq$ontResTranA ## -------- Proteogenomics ------------------- protein = list( - t2p.collapse = read.table(paste0(dirnames$protein,"/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T) + cpat = read.table(paste0(dirnames$protein,"5_calledOrfs/all_iso_ont_best_orf.tsv"), sep ="\t", header = T), + t2p.collapse = read.table(paste0(dirnames$protein,"6_refined_database/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T) ) @@ -105,3 +106,10 @@ gtf$ptarg_merged <- gtf$ptarg_merged %>% mutate(transcript = word(transcript_id, gtf$targ_merged <- rbind(gtf$targ_merged[,c("seqnames","strand","start","end","type","transcript_id","gene_id")], gtf$ptarg_merged[,c("seqnames","strand","start","end","type","transcript_id","gene_id")], gtf$ref_target[,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) + + +## -------- FICLE output ------------------- +#Maptprotein <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Mapt","corrected_acc"]) +MaptES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/Mapt/Stats/Mapt_general_exon_level.csv") +Trem2ES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_Exonskipping_generaltab.csv") +Trem2NE <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_NE.csv") From 0fe4140ed9a188269bb77b9c660e2fe0ebd39b64 Mon Sep 17 00:00:00 2001 From: sl693 Date: Wed, 10 Jan 2024 19:43:17 +0000 Subject: [PATCH 05/29] - update isoseq config file to lustre - J20 C20 and C21 run Iso-Seq3 pipeline to cluster --- .../1_IsoSeq_Pipeline/1b_J20_run_isoseq3.sh | 50 +++++++++++++ .../1_IsoSeq_Pipeline/rTg4510_isoseq.config | 73 ++++++++++--------- 2 files changed, 88 insertions(+), 35 deletions(-) create mode 100644 A_Global_Transcriptome/1_IsoSeq_Pipeline/1b_J20_run_isoseq3.sh diff --git a/A_Global_Transcriptome/1_IsoSeq_Pipeline/1b_J20_run_isoseq3.sh b/A_Global_Transcriptome/1_IsoSeq_Pipeline/1b_J20_run_isoseq3.sh new file mode 100644 index 0000000..a41b4e7 --- /dev/null +++ b/A_Global_Transcriptome/1_IsoSeq_Pipeline/1b_J20_run_isoseq3.sh @@ -0,0 +1,50 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=20:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --array=0-1 # 2 samples +#SBATCH --output=1b_J20_run_isoseq3-%A_%a.o +#SBATCH --error=1b_J20_run_isoseq3-%A_%a.e + + +# J20 samples + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/A_Global_Transcriptome +source $SC_ROOT/1_IsoSeq_Pipeline/rTg4510_isoseq.config +source $SC_ROOT/1_IsoSeq_Pipeline/01_source_functions.sh + + +##------------------------------------------------------------------------- + +# run as array (defined in config file) +rawDir=/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/1_raw/A_WholeTranscriptome/J20_PacBio +SAMPLE=${J20_ALL_SAMPLE_NAMES[${SLURM_ARRAY_TASK_ID}]} +J20_BAM_FILES=($rawDir/m54082_190302_104610.subreads.bam $rawDir/m54082_180816_074627.subreads.bam) +BAM_FILE=${J20_BAM_FILES[${SLURM_ARRAY_TASK_ID}]} + + +##------------------------------------------------------------------------- + +# Isoseq3.4.0 +# run_CCS_batch +# run_LIMA $Sample $Input_CCS_directory $Output_directory <"no_multiplex"/"multiplex"> +# run_REFINE $Sample $Input_LIMA_directory $Output_directory +# run_CLUSTER $Sample $Input_REFINE_directory $Output_directory +run_CCS ${BAM_FILE} ${SAMPLE} ${WKD_ROOT}/1_isoseq3/1_ccs +run_LIMA ${SAMPLE} ${WKD_ROOT}/1_isoseq3/1_ccs ${WKD_ROOT}/1_isoseq3/2_lima "no_multiplex" +run_REFINE ${SAMPLE} ${WKD_ROOT}/1_isoseq3/2_lima ${WKD_ROOT}/1_isoseq3/3_refine +run_CLUSTER ${SAMPLE} ${WKD_ROOT}/1_isoseq3/3_refine ${WKD_ROOT}/1_isoseq3/4_cluster + + +##------------------------------------------------------------------------- +#run_star ${SAMPLE} ${RNASEQ_FILTERED_DIR} ${RNASEQ_MAPPED_DIR} \ No newline at end of file diff --git a/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config b/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config index 531f8d7..9bc5bcc 100644 --- a/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config +++ b/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config @@ -21,64 +21,67 @@ export NAME=WholeIsoSeq ## Output root directory filepath (ensure path exists) -export rTG4510=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 -export WKD_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/A_IsoSeq_Whole +export rTG4510=/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 +export WKD_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/A_IsoSeq_Whole ## --------------------------- ## Source functions and scripts directory -export SC_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/A_Global_Transcriptome -export GENERALFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General -export TAMAFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General/2_Transcriptome_Annotation/TAMA +export SC_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/A_Global_Transcriptome +#export GENERALFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General +#export TAMAFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General/2_Transcriptome_Annotation/TAMA ## --------------------------- ## Reference -export REFERENCE=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/references +export REFERENCE=/lustre/projects/Research_Project-MRC148213/sl693/reference export GENOME_FASTA=$REFERENCE/mouse/mm10.fa export GENOME_GTF=$REFERENCE/annotation/gencode.vM22.annotation.gtf -export GENOME_LNCRNA_GTF=$REFERENCE/mouse/gencode.vM25.long_noncoding_RNAs.gtf -export STAR_REF_DIR=${REFERENCE}/STAR_main +#export GENOME_LNCRNA_GTF=$REFERENCE/mouse/gencode.vM25.long_noncoding_RNAs.gtf +#export STAR_REF_DIR=${REFERENCE}/STAR_main # Primers and Probes -export FASTA=$REFERENCE/Primers/primer.fasta -export TARGETED_FASTA=$REFERENCE/Primers/targeted.primer.fasta +export FASTA=$rTG4510/0_utils/primer.fasta +#export TARGETED_FASTA=$REFERENCE/Primers/targeted.primer.fasta # transgene sequences -source $rTG4510/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/WT_TG_seq_differentiators.fa +#source $rTG4510/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/WT_TG_seq_differentiators.fa ## --------------------------- ## Long read data (Iso-Seq) -SAMPLE_CONFIG=$SC_ROOT/1_IsoSeq_Pipeline/rTg4510_samples.tsv -export ALL_SAMPLE_NAMES=($(grep "^[^#;]" $SAMPLE_CONFIG | awk '{print $1}')) -export BAM_FILES=($(grep "^[^#;]" $SAMPLE_CONFIG | awk '{print $2}')) +#SAMPLE_CONFIG=$rTg4510/1_IsoSeq_Pipeline/rTg4510_samples.tsv +#export ALL_SAMPLE_NAMES=($(grep "^[^#;]" $SAMPLE_CONFIG | awk '{print $1}')) +#export BAM_FILES=($(grep "^[^#;]" $SAMPLE_CONFIG | awk '{print $2}')) + +J20_SAMPLE_CONFIG=$rTG4510/0_utils/J20_samples.tsv +export J20_ALL_SAMPLE_NAMES=($(grep "^[^#;]" $J20_SAMPLE_CONFIG | awk '{print $1}')) +export J20_BAM_FILES=($(grep "^[^#;]" $J20_SAMPLE_CONFIG | awk '{print $2}')) ## --------------------------- # Short read data (RNA-Seq) -RNASEQ_FILTERED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/1_raw/C_rnaseq_raw/Tg4510_filtered -RNASEQ_SAMPLES_NAMES=$(awk '{print $1}' $SC_ROOT/1_IsoSeq_Pipeline/rTg4510_rnaseq_samples.tsv) -RNASEQ_SQ_INPUT=${ALL_SAMPLE_NAMES[@]} -RNASEQ_MAPPED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/C_RNASeq/2_aligned/Matched_Whole +#RNASEQ_FILTERED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/1_raw/C_rnaseq_raw/Tg4510_filtered +#RNASEQ_SAMPLES_NAMES=$(awk '{print $1}' $SC_ROOT/1_IsoSeq_Pipeline/rTg4510_rnaseq_samples.tsv) +#RNASEQ_SQ_INPUT=${ALL_SAMPLE_NAMES[@]} +#RNASEQ_MAPPED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/C_RNASeq/2_aligned/Matched_Whole ## --------------------------- ## Software -export SOFTDIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/software +export SOFTDIR=/lustre/projects/Research_Project-MRC148213/sl693/software -export CUPCAKE=$SOFTDIR/Post_Isoseq3/cDNA_Cupcake +export CUPCAKE=$SOFTDIR/cDNA_Cupcake export ANNOTATION=$CUPCAKE/annotation export SEQUENCE=$CUPCAKE/sequence export PYTHONPATH=$PYTHONPATH:$SEQUENCE -export SQANTI2_dir=$SOFTDIR/Post_Isoseq3/SQANTI2 export SQANTI3_DIR=$SOFTDIR/SQANTI3 -export SQ_Report=$SOFTDIR/Post_Isoseq3/SQANTI2/utilities/SQANTI_report2.R -export TAPPAS_dir=$SOFTDIR/TAPPAS -export TAMA_DIR=$SOFTDIR/tama/tama_go/filter_transcript_models +export SQ_Report=$SOFTDIR/SQANTI3/utilities/SQANTI_report2.R +#export TAPPAS_dir=$SOFTDIR/TAPPAS +#export TAMA_DIR=$SOFTDIR/tama/tama_go/filter_transcript_models ## --------------------------- @@ -92,17 +95,17 @@ GFF3=$TAPPAS_dir/Mus_musculus_GRCm38_Ensembl_86.gff3 ## --------------------------- ## Internal Scripts -DEMUXFUNCTIONSGLOB=$GENERALFUNC/2_Transcriptome_Annotation/Cupcake_Demultiplex.R -TAMAMERGE=$TAMAFUNC/TAMA_Merge_Prepare.R -TAMASUBSET=$GENERALFUNC/2_Transcriptome_Annotation/TAMA/tama_sqanti_classgtfsubset.R -TAMASUBSETFASTA=$GENERALFUNC/2_Transcriptome_Annotation/TAMA/tama_sqanti_fastasubset.py -ISMREMOVE=$GENERALFUNC/2_Transcriptome_Annotation/3ISM_remove_classification.R -SQSUBSET=$GENERALFUNC/2_Transcriptome_Annotation/sqanti_classgtfsubset.R -SQCOUNT=$GENERALFUNC/2_Transcriptome_Annotation/subset_casecontrol_by_counts.R -SQCOUNT_SAMPLE=$GENERALFUNC/2_Transcriptome_Annotation/subset_sample_by_counts.R -ISOCOL=$GENERALFUNC/2_Transcriptome_Annotation/colour_common_targeted_transcripts.py -MODKAL=$GENERALFUNC/2_Transcriptome_Annotation/TabSeparated_Kallisto.R -TALEXP=$GENERALFUNC/5_TappAS_Differential/talon2tappas_expression.R +#DEMUXFUNCTIONSGLOB=$GENERALFUNC/2_Transcriptome_Annotation/Cupcake_Demultiplex.R +#TAMAMERGE=$TAMAFUNC/TAMA_Merge_Prepare.R +#TAMASUBSET=$GENERALFUNC/2_Transcriptome_Annotation/TAMA/tama_sqanti_classgtfsubset.R +#TAMASUBSETFASTA=$GENERALFUNC/2_Transcriptome_Annotation/TAMA/tama_sqanti_fastasubset.py +#ISMREMOVE=$GENERALFUNC/2_Transcriptome_Annotation/3ISM_remove_classification.R +#SQSUBSET=$GENERALFUNC/2_Transcriptome_Annotation/sqanti_classgtfsubset.R +#SQCOUNT=$GENERALFUNC/2_Transcriptome_Annotation/subset_casecontrol_by_counts.R +#SQCOUNT_SAMPLE=$GENERALFUNC/2_Transcriptome_Annotation/subset_sample_by_counts.R +#ISOCOL=$GENERALFUNC/2_Transcriptome_Annotation/colour_common_targeted_transcripts.py +#MODKAL=$GENERALFUNC/2_Transcriptome_Annotation/TabSeparated_Kallisto.R +#TALEXP=$GENERALFUNC/5_TappAS_Differential/talon2tappas_expression.R cd $WKD_ROOT; mkdir -p 1_isoseq3 2_post_isoseq3 cd $WKD_ROOT/1_isoseq3; mkdir -p 1_ccs 2_lima 3_refine 4_cluster 5_merged_cluster From 31f9cda06751aa6dd37b91a98818428682b89803 Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 22 Jan 2024 18:33:59 +0000 Subject: [PATCH 06/29] Correlation revisions and plots --- Reviews/1_reviewAnalysis.R | 128 +++++++++++++++++++++++++++++-------- 1 file changed, 100 insertions(+), 28 deletions(-) diff --git a/Reviews/1_reviewAnalysis.R b/Reviews/1_reviewAnalysis.R index 0e7a825..b95bb65 100644 --- a/Reviews/1_reviewAnalysis.R +++ b/Reviews/1_reviewAnalysis.R @@ -12,8 +12,11 @@ library("dplyr") library("stringr") library("cowplot") library("data.table") +library("ggplot2") +library(ggrepel) suppressMessages(library("gridExtra")) suppressMessages(library("grid")) +source("/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/Reviews/rTg4510_config.R") options(scipen = 999) @@ -53,55 +56,118 @@ pHKTransExpPlotsList <- grid.arrange(arrangeGrob(HKTransExpPlotsList, left = y. ## --------------------------- correlation +## correlate the number of novel isoforms to number of all reads +# determine the total number of reads per sample (target + offtargets) +# rawExp = demux_fl_count.csv class.files$targ_offtargets <- merge(class.files$targ_offtargets, rawExp$targ_ont_all, by = "isoform", all.x = T) +allReadCountSample <- colSums(class.files$targ_offtargets %>% select(contains(c("ONT", "Iso.Seq")))) %>% reshape2::melt(., value.name = "totalReads") %>% tibble::rownames_to_column(., var = "sample") + +# fiilter only novel isoforms in the target gene panel (before expression filter) novelIsoforms <- class.files$targ_all %>% filter(associated_transcript == "novel") %>% select(contains(c("ONT", "Iso.Seq"))) + +# sum the number of novel isoforms (frequency) for each sample; i.e. count the number of occurence where FL read count != 0 novelIsoformsSample <- apply(novelIsoforms, 2, function(c)sum(c!=0)) %>% reshape2::melt(., value.name = "novelNum") %>% tibble::rownames_to_column(., var = "sample") -allReadCountSample <- colSums(Filter(is.numeric, class.files$targ_all %>% select(contains(c("ONT", "Iso.Seq"))))) %>% reshape2::melt(., value.name = "totalReads") %>% tibble::rownames_to_column(., var = "sample") +# count the total number of target reads per sample (before expression filter) +allTargetReadCountSample <- colSums(class.files$targ_all %>% select(contains(c("ONT", "Iso.Seq")))) %>% reshape2::melt(., value.name = "totalReads") %>% tibble::rownames_to_column(., var = "sample") + +# create df for correlationl merging the number of novel isoforms per sample and the number of total reads per sample +# remove ONT_sum_FL and Iso-Seq_sum_FL columns +# separate platforms corrNovelNumReads <- merge(novelIsoformsSample,allReadCountSample) %>% filter(!sample %in% c("ONT_sum_FL","Iso.Seq_sum_FL")) %>% mutate(platform = word(sample,c(1),sep=fixed("_")), sampleID = word(sample,c(2),sep=fixed("_"))) PBcorrNovelNumReads <- corrNovelNumReads[corrNovelNumReads$platform == "Iso.Seq",] ONTcorrNovelNumReads <- corrNovelNumReads[corrNovelNumReads$platform == "ONT",] + +# correlation test (Pearson's) cor.test(PBcorrNovelNumReads$novelNum,PBcorrNovelNumReads$totalReads) cor.test(ONTcorrNovelNumReads$novelNum,ONTcorrNovelNumReads$totalReads) -library("ggplot2") -ggplot(corrNovelNumReads, aes(x = novelNum, y = totalReads, colour = platform)) + geom_point() + mytheme - +pCorr1 <- ggplot(corrNovelNumReads, aes(x = novelNum, y = totalReads, colour = platform)) + geom_point() + + mytheme + labs(x = "Number of novel isoforms", y = "Number of reads") + + scale_colour_discrete(name = "Platform") + + theme(legend.position = "top") + + geom_smooth(method = "lm", se = FALSE) -## library +# take into consideration that the samples were batched; determining which sample was in which batch +# if comparing the number of novel isoforms per library (i.e. per batch) using t-test batch1 <- c("K19", "K23", "K21", "K18", "K20", "K17") batch2 <- c("S19", "K24", "L22", "M21", "O18", "O23", "O22", "P19", "T20") batch3 <- c("Q20", "Q21", "S18", "S23", "Q18", "Q17", "L18", "Q23", "T18") batchedSamples <- data.frame(sampleID = c(batch1,batch2,batch3), batch = c(rep("1", length(batch1)),rep("2", length(batch2)),rep("3", length(batch3)))) corrNovelNumReads <- merge(corrNovelNumReads,batchedSamples,by = "sampleID") -ontCorrNovelNumReads <- corrNovelNumReads[corrNovelNumReads$platform == "ONT",] %>% mutate(ratio = novelNum/totalReads) -t.test(data = ontCorrNovelNumReads, ratio ~ batch) - -batchCorrNovelNumReads <- corrNovelNumReads %>% - group_by(platform, batch) %>% - summarise(across(c(novelNum, totalReads), list(sum = sum))) - -ggplot(ontCorrNovelNumReads, aes(x = batch, y = ratio)) + geom_boxplot() - +# only ONT reads +CorrNovelNumReads <- corrNovelNumReads %>% mutate(ratio = novelNum/totalReads) +pCorr2 <- CorrNovelNumReads %>% filter(batch != c(1)) %>% + ggplot(., aes(x = batch, y = ratio)) + geom_boxplot() + geom_point() + + mytheme + labs(x = "Sequencing library", y = "Ratio of novel isoforms: total reads") + facet_grid(~platform) + + theme(panel.grid.major = element_blank(), + panel.grid.minor = element_blank(), + strip.background = element_blank(), + panel.border = element_rect(colour = "white", fill = NA)) +t.test(data = CorrNovelNumReads %>% filter(platform == "ONT"), ratio ~ batch) +t.test(data = CorrNovelNumReads %>% filter(platform == "Iso.Seq" & batch != "1"), ratio ~ batch) + +# whole transcriptome +allReadCountSample <- colSums(class.files$glob_iso %>% select(contains("FL."))) %>% reshape2::melt(., value.name = "totalReads") %>% tibble::rownames_to_column(., var = "sample") +novelIsoforms <- class.files$glob_iso %>% filter(associated_transcript == "novel") %>% select(contains(c("FL."))) +novelIsoformsSample <- apply(novelIsoforms, 2, function(c)sum(c!=0)) %>% reshape2::melt(., value.name = "novelNum") %>% tibble::rownames_to_column(., var = "sample") +corrNovelNumReads <- merge(novelIsoformsSample,allReadCountSample) +cor.test(corrNovelNumReads$novelNum, corrNovelNumReads$totalReads) +pCorr3 <- ggplot(corrNovelNumReads, aes(x = novelNum, y = totalReads)) + geom_point(colour = "#F8766D") + + mytheme + labs(x = "Number of novel isoforms", y = "Number of reads") + + theme(legend.position = "top") # gene expression -meanGeneExpression <- aggregate(normalised_counts ~ associated_gene, data = TargetedDESeq$ontResGeneAnno$waldgenotype$norm_counts, FUN = mean) -colnames(meanGeneExpression) <- c("associated_gene", "mean_gene_counts") - -dat <- class.files$targ_all %>% - filter(associated_transcript == "novel") %>% - select(contains(c("ONT", "Iso.Seq", "associated_gene"))) +corrNovelIsoformGeneExpression <- function(classfiles, normCounts, platform){ + + if(!platform %in% c("ONT","Iso.Seq")){ + message("Platform argument: ONT, Iso.Seq") + } + + # aggregate the counts by associated gene + meanGeneExpression <- aggregate(normalised_counts ~ associated_gene, data = normCounts, FUN = mean) + colnames(meanGeneExpression) <- c("associated_gene", "mean_gene_counts") + meanGeneExpression <<- meanGeneExpression + + # number of novel isoforms per sample in dataset + novelIsoform <- classfiles %>% + # novel isoform + filter(associated_transcript == "novel") %>% + # select columns that are FL read counts + select(contains(c("ONT", "Iso.Seq", "associated_gene"))) %>% + group_by(associated_gene) %>% + # for each sample (i.e ONT_S19), count the number of isoforms with reads > 0 + summarise_all(~ sum(. != 0)) %>% + select(-contains("sum_FL")) %>% + reshape2::melt(., variable.name = "sample", value.name = "num_novel_iso") + novelIsoform <<- novelIsoform + + # the average number of isoforms for each gene across all samples + meanNumNovel <- novelIsoform %>% filter(grepl(platform,sample)) %>% group_by(associated_gene) %>% summarise(mean = mean(num_novel_iso)) + meanGeneNumNovel <- merge(meanGeneExpression,meanNumNovel, by = "associated_gene") + cortest <- cor.test(meanGeneNumNovel$mean_gene_counts, meanGeneNumNovel$mean) + print(cortest) + corr.value <- cor(meanGeneNumNovel$mean_gene_counts, meanGeneNumNovel$mean) + + corr <- grobTree(textGrob(paste("r = ", round(corr.value, 2)), + x = 0.05, y = 0.80, hjust = 0, + gp = gpar(col = "black", fontsize = 14, fontface = "italic",family="CM Roman"))) + + + p <- ggplot(meanGeneNumNovel, aes(y = mean_gene_counts, x = mean, label = as.factor(associated_gene))) + geom_point() + + annotation_custom(corr) + + mytheme + labs(y = "Mean gene expression", x = "Mean number of novel isoforms") + + geom_text_repel()#+ + #geom_smooth(method=lm, colour = "gray", se = FALSE) + + return(p) +} -result <- dat %>% - group_by(associated_gene) %>% - summarise_all(~ sum(. != 0)) +pCorrGeneONT <- corrNovelIsoformGeneExpression(class.files$targ_all, TargetedDESeq$ontResGeneAnno$waldgenotype$norm_counts,"ONT") +pCorrGeneIso <- corrNovelIsoformGeneExpression(class.files$targ_all, TargetedDESeq$isoResGeneAnno$wald$norm_counts,"Iso.Seq") -meanNumNovel <- reshape2::melt(result , variable.name = "sample", value.name = "num_novel_iso") %>% - group_by(associated_gene) %>% summarise(mean = mean(num_novel_iso)) - -merge(meanGeneExpression,meanNumNovel, by = "associated_gene") %>% ggplot(., aes(x = mean_gene_counts, y = mean)) + geom_point() ## --------------------------- output (pdf) @@ -109,4 +175,10 @@ merge(meanGeneExpression,meanNumNovel, by = "associated_gene") %>% ggplot(., aes #pdf(paste0(dirnames$targ_output,"/housekeepingGenes.pdf"), width = 14, height = 17) pdf("housekeepingGenes.pdf", width = 12, height = 14) plot_grid(pHKGeneExpPlotsList,pHKTransExpPlotsList,nrow=2, labels = c("A","B"), scale = 0.95) -dev.off() \ No newline at end of file +dev.off() + +pdf("Correlation.pdf", width = 10, height = 10) +plot_grid(plot_grid(pCorr3, NULL,rel_widths = c(0.6,0.4), labels = c("A","")), + plot_grid(pCorr1,pCorr2, rel_widths = c(0.6,0.4), labels = c("B","C")), nrow = 2, scale = 0.95) +dev.off() +plot_grid(pCorrGeneONT, pCorrGeneIso, labels = c("A","B")) From 901c64b7b0f1b9cc37ba1debe288ff51d4ca5c23 Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 22 Jan 2024 18:35:42 +0000 Subject: [PATCH 07/29] Cryptic exons - Rerun FICLE for all 20 genes - Include output paths to config file - generate figures for Apoe, Bin1, Clu, Snca, Trem2 after manually assessing through all other 20 genes Basic proteogenomics summary txt --- .../2_merged_characterise_ficleonly.sh | 41 +++++++++ Reviews/3_post_proteogenomics.R | 87 ++++++++++++++++++- Reviews/rTg4510_config.R | 16 +++- 3 files changed, 137 insertions(+), 7 deletions(-) create mode 100644 B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/2_merged_characterise_ficleonly.sh diff --git a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/2_merged_characterise_ficleonly.sh b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/2_merged_characterise_ficleonly.sh new file mode 100644 index 0000000..d625eb9 --- /dev/null +++ b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/2_merged_characterise_ficleonly.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=1:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address + + +# 22/01/2022: Rerun FICLE due to gfps isca down + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2 +source activate ficle +FICLE_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/scripts/FICLE +export PATH=$PATH:${FICLE_ROOT} + + +##------------------------------------------------------------------------- + +# directory paths +TGENES=(Apoe Clu App Snca Ptk2b Bin1 Fus Vgf Picalm Mapt Trem2 Tardbp Sorl1 Abca7 Fyn Abca1 Cd33 Ank1 Rhbdf2 Trpa1) +refDir=/lustre/projects/Research_Project-MRC148213/sl693/reference/annotation/ +inputDir=/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/2_sqanti3/ +outputDir=/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/4_characterise/ + +# run ficle +for g in ${TGENES[@]}; do + echo $g + ficle.py --gene=$g \ + --reference=${refDir}/gencode.M22.annotation.20Targets.gtf \ + --input_bed=${inputDir}/all_iso_ont_collapsed.filtered_counts_filtered_sorted.bed12 \ + --input_gtf=${inputDir}/all_iso_ont_collapsed.filtered_counts_filtered.gtf \ + --input_class=${inputDir}/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt \ + --output_dir=${outputDir} &> ${outputDir}/Log/$g"_characterise.log" +done diff --git a/Reviews/3_post_proteogenomics.R b/Reviews/3_post_proteogenomics.R index 171608c..50a774d 100644 --- a/Reviews/3_post_proteogenomics.R +++ b/Reviews/3_post_proteogenomics.R @@ -30,16 +30,44 @@ generalggTranPlots <- function(isolist, inputgtf, classfiles, gene, cpat = NULL, # original transcript classification file with additional column of the number of collapsed transcripts by ORF # col: corrected_acc = representative isoform after collapsing by ORF class.files$ptarg_filtered <- SQANTI_class_preparation(paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"),"nstandard") -protein$t2p.collapse <- read.table(paste0(dirnames$protein,"/all_iso_ont_orf_refined_collapsed.tsv")) +protein$t2p.collapse.refined <- read.table(paste0(dirnames$protein,"6_refined_database/all_iso_ont_orf_refined_collapsed.tsv")) annopResTran <- readRDS(paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) dirnames$protein <- paste0(dirnames$targ_root,"/4_proteogenomics/7_classified_protein/") -class.files$protein <- read.table(paste0(dirnames$protein,"all_iso_ont.sqanti_protein_classification.tsv", sep = "\t", header = T)) +class.files$protein <- read.table(paste0(dirnames$protein,"all_iso_ont.sqanti_protein_classification.tsv"), sep = "\t", header = T) nmd <- read.table(paste0(dirnames$protein, "all_iso_ont.classification_filtered.tsv"), sep = "\t", header = T) idx <- match(nmd$pb,class.files$ptarg_filtered$base_acc) nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.files$ptarg_filtered$corrected_acc[idx]), NA)) +# basic summary stats +message("Number of RNA Transcripts:", nrow(class.files$targ_filtered)) +message("Number of coding RNA isoforms:", length(unique(protein$t2p.collapse.refined$pb_acc))) +message("Number of coding RNA isoforms:", length(unique(protein$t2p.collapse.refined$corrected_acc))) +length(unique(class.files$ptarg_filtered$corrected_acc)) # -1 to not include "NA" + +NumTranscriptIsoform <- merge(class.files$ptarg_filtered %>% group_by(associated_gene) %>% summarize(RNATranscript = n()), + class.files$ptarg_filtered %>% select(corrected_acc, associated_gene) %>% filter(!is.na(corrected_acc)) %>% + distinct() %>% group_by(associated_gene) %>% summarize(RNAIsoform = n()), by = "associated_gene") + +ggplot(NumTranscriptIsoform, aes(x = RNAIsoform, y = RNATranscript, label = associated_gene)) + geom_point() + geom_text_repel() + + geom_abline(intercept = 0, linetype = "dashed") + mytheme + +dat <- class.files$ptarg_filtered %>% filter(!is.na(corrected_acc)) %>% filter(!isoform %in% class.files$ptarg_filtered$corrected_acc) %>% + group_by(structural_category, subcategory) %>% tally() + + ggplot(., aes(y = n, x = subcategory)) + geom_bar(stat = "identity") + facet_grid(rows = vars(structural_category), scales = "free") + coord_flip() + +dat <- class.files$ptarg_filtered %>% filter(!is.na(corrected_acc)) %>% filter(isoform %in% class.files$ptarg_filtered$corrected_acc) %>% + group_by(structural_category, subcategory) %>% tally() + +class.files$ptarg_filtered %>% group_by(corrected_acc) %>% tally() %>% group_by(n) %>% tally() +ggplot(aes(x = n, y = nn)) + geom_bar(stat = "identity") + +table(class.files$protein$pr_splice_cat) +nrow(class.files$protein) +3496/nrow(class.files$protein) + ## ---------- WT vs TG ----------------- @@ -218,6 +246,51 @@ plot_trem2("PB.20818.382") plot_trem2("PB.20818.547") +## ---------- cryptic exons ----------------- + +InternalNovelExons <- lapply(FICLENE, function(x) x[x$classification == "Internal_NovelExon",]) +InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, + protein$cpat[,c("pb_acc","coding_score","orf_calling_confidence")], + by.x = "transcriptID", by.y = "pb_acc")) +InternalNovelExons <- lapply(InternalNovelExons, function(x) x %>% mutate(coding = ifelse(coding_score < 0.44, "noncoding","coding"))) +InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, + nmd[,c("pb","is_nmd","has_stop_codon")], + by.x = "transcriptID", by.y = "pb",all.x=TRUE)) +plotCE <- function(gene){ + representative <- as.data.frame(gtf$ref_target %>% filter(type == "transcript" & transcript_type == "protein_coding") %>% group_by(gene_name) %>% top_n(1, width)) + allRep <- as.data.frame(gtf$ref_target) + # manual drop gene + print(gene) + df <- InternalNovelExons[[gene]] + if(gene == "Apoe"){ + df <- df[df$transcriptID == "PB.40586.26305",] + }else if(gene == "Bin1"){ + df <- df[df$transcriptID %in% paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")),] + }else if(gene == "Clu"){ + df <- df[df$transcriptID %in% paste0("PB.14646.",c("6992")),] + }else if(gene == "Snca"){ + df <- df[df$transcriptID %in% paste0("PB.38419.",c("3145")),] + }else if(gene == "Trem2"){ + df <- df[df$transcript %in% paste0("PB.20818.", c("80","192","573","1074","493","362","1096")),] + }else{ + return(NULL) + } + + p <- list( + #Reference = c("ENSMUST00000024791.14","ENSMUST00000113237.3"), + Reference = unique(allRep[allRep$gene_name == gene, "transcript_id"]), + #Reference = representative[ representative$gene_name == gene, "transcript_id"], + `not NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "False") %>% .[,c("transcriptID")])), + `NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "True") %>% .[,c("transcriptID")])), + `non-coding` = as.character(unique(df %>% filter(coding == "noncoding") %>% .[,c("transcriptID")])) + ) %>% generalggTranPlots(., gtf$targ_merged, class.files$targ_filtered, gene) + + return(p) +} + +pInternalNovelExons <- lapply(names(InternalNovelExons), function(x) plotCE(x)) +names(pInternalNovelExons) <- names(InternalNovelExons) + ## ---------- output (pdf) ----------------- pdf(paste0(dirnames$targ_output,"/MaptIsoforms.pdf"), width = 14, height = 17) @@ -229,7 +302,15 @@ plot_grid(plot_grid(pMaptRTranscripts,pMaptRProtein, labels = c("i","ii")), dev.off() +pdf("Trem2IsoformsIdentialOrf.pdf", width = 10, height = 10) plot_grid(pTrem2ProteinSameORF) +dev.off() +pdf("Trem2IsoformsUniqueOrf.pdf", width = 10, height = 20) plot_grid(pTremFinal,pTremFinalProtein, nrow=1) +dev.off() +pdf("Trem2IsoformsESOrf.pdf", width = 10, height = 10) plot_grid(pTrem2ESTranscripts, pTrem2ESProtein, nrow = 1) -plot_grid(pTrem2CE,pTrem2CEProtein,nrow=1) \ No newline at end of file +dev.off() +pdf("Trem2IsoformsCEOrf.pdf", width = 10, height = 10) +plot_grid(Trem2CE,Trem2CEProtein,nrow=1) +dev.off() \ No newline at end of file diff --git a/Reviews/rTg4510_config.R b/Reviews/rTg4510_config.R index 5cefec9..36913c6 100644 --- a/Reviews/rTg4510_config.R +++ b/Reviews/rTg4510_config.R @@ -1,7 +1,10 @@ # Szi Kay Leung: sl693@exeter.ac.uk suppressMessages(library("data.table")) +suppressMessages(library("stringr")) LOGEN <- "/lustre/projects/Research_Project-MRC148213/sl693/scripts/LOGen" +source(paste0(LOGEN, "/aesthetics_basics_plots/pthemes.R")) +source(paste0(LOGEN, "/aesthetics_basics_plots/draw_density.R")) source(paste0(LOGEN,"/transcriptome_stats/read_sq_classification.R")) source(paste0(LOGEN,"/target_gene_annotation/summarise_gene_stats.R")) source(paste0(LOGEN,"/compare_datasets/dataset_identifer.R")) @@ -9,7 +12,7 @@ source(paste0(LOGEN, "/differential_analysis/plot_transcript_level.R")) source(paste0(LOGEN, "/aesthetics_basics_plots/pthemes.R")) source(paste0(LOGEN, "/differential_analysis/run_DESeq2.R")) source(paste0(LOGEN, "/merge_characterise_dataset/run_ggtranscript.R")) -source(paste0(LOGEN, "/aesthetics_basics_plots/pthemes.R")) + wholesamples <- c("K17","K18","K23","K24","L22","M21","O18","O23","Q20","Q21","S18","S23") @@ -110,6 +113,11 @@ gtf$targ_merged <- rbind(gtf$targ_merged[,c("seqnames","strand","start","end","t ## -------- FICLE output ------------------- #Maptprotein <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Mapt","corrected_acc"]) -MaptES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/Mapt/Stats/Mapt_general_exon_level.csv") -Trem2ES <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_Exonskipping_generaltab.csv") -Trem2NE <- read.csv("/lustre/projects/Research_Project-MRC148213/sl693/rTg4510_FICLE/FICLE/TargetGenes/Trem2/Stats/Trem2_NE.csv") +FICLE_dir <- "/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/4_characterise/TargetGenes" +MaptES <- read.csv(paste0(FICLE_dir, "/Mapt/Stats/Mapt_general_exon_level.csv")) +Trem2ES <- read.csv(paste0(FICLE_dir, "/Trem2/Stats/Trem2_general_exon_level.csv")) + +# novel cryptic exons +FICLENE <- list.files(path = FICLE_dir, pattern = "_NE_coordinates.csv", recursive = T, full.names = T) +FICLENE <- lapply(FICLENE, function(x) read.csv(x)) +names(FICLENE) <- word(list.files(path = FICLE_dir, pattern = "_NE_coordinates.csv", recursive = T, full.names = F),c(1),sep=fixed("/")) From 4df61f44509c5f61a7f140a7a05081bb99b1d162 Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 5 Feb 2024 20:01:54 +0000 Subject: [PATCH 08/29] J20 mouse iso-seq + post-iso-seq --- .../1_IsoSeq_Pipeline/1c_J20_run_isoseq3.sh | 52 +++++++++++++++++ .../2b_map_annotate_isoform.sh | 56 +++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 A_Global_Transcriptome/1_IsoSeq_Pipeline/1c_J20_run_isoseq3.sh create mode 100644 A_Global_Transcriptome/1_IsoSeq_Pipeline/2b_map_annotate_isoform.sh diff --git a/A_Global_Transcriptome/1_IsoSeq_Pipeline/1c_J20_run_isoseq3.sh b/A_Global_Transcriptome/1_IsoSeq_Pipeline/1c_J20_run_isoseq3.sh new file mode 100644 index 0000000..adef686 --- /dev/null +++ b/A_Global_Transcriptome/1_IsoSeq_Pipeline/1c_J20_run_isoseq3.sh @@ -0,0 +1,52 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=20:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --array=0-1 # 2 samples +#SBATCH --output=1c_J20_run_isoseq3-%A_%a.o +#SBATCH --error=1c_J20_run_isoseq3-%A_%a.e + + +# J20 samples: E18 and B21 + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/A_Global_Transcriptome +source $SC_ROOT/1_IsoSeq_Pipeline/rTg4510_isoseq.config +source $SC_ROOT/1_IsoSeq_Pipeline/01_source_functions.sh + + +##------------------------------------------------------------------------- + +# run as array (defined in config file) +rawDir=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/1_raw/A_WholeTranscriptome/J20_PacBio +J20_ALL_SAMPLE_NAMES=(E18 B21) +J20_BAM_FILES=($rawDir/m54082_180818_105629.subreads.bam $rawDir/m54082_190303_070925.subreads.bam) + +SAMPLE=${J20_ALL_SAMPLE_NAMES[${SLURM_ARRAY_TASK_ID}]} +BAM_FILE=${J20_BAM_FILES[${SLURM_ARRAY_TASK_ID}]} + + +##------------------------------------------------------------------------- + +# Isoseq3.4.0 +# run_CCS_batch +# run_LIMA $Sample $Input_CCS_directory $Output_directory <"no_multiplex"/"multiplex"> +# run_REFINE $Sample $Input_LIMA_directory $Output_directory +# run_CLUSTER $Sample $Input_REFINE_directory $Output_directory +run_CCS ${BAM_FILE} ${SAMPLE} ${WKD_ROOT}/1_isoseq3/1_ccs +run_LIMA ${SAMPLE} ${WKD_ROOT}/1_isoseq3/1_ccs ${WKD_ROOT}/1_isoseq3/2_lima "no_multiplex" +run_REFINE ${SAMPLE} ${WKD_ROOT}/1_isoseq3/2_lima ${WKD_ROOT}/1_isoseq3/3_refine +run_CLUSTER ${SAMPLE} ${WKD_ROOT}/1_isoseq3/3_refine ${WKD_ROOT}/1_isoseq3/4_cluster + + +##------------------------------------------------------------------------- +#run_star ${SAMPLE} ${RNASEQ_FILTERED_DIR} ${RNASEQ_MAPPED_DIR} \ No newline at end of file diff --git a/A_Global_Transcriptome/1_IsoSeq_Pipeline/2b_map_annotate_isoform.sh b/A_Global_Transcriptome/1_IsoSeq_Pipeline/2b_map_annotate_isoform.sh new file mode 100644 index 0000000..3277ff5 --- /dev/null +++ b/A_Global_Transcriptome/1_IsoSeq_Pipeline/2b_map_annotate_isoform.sh @@ -0,0 +1,56 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=20:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=2b_map_annotate_isoform.o2 +#SBATCH --error=2b_map_annotate_isoform.e2 + +# J20 C20, C21, B21 and E18 Iso-Seq pipeline + + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/A_Global_Transcriptome +LOGEN_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen +source $SC_ROOT/1_IsoSeq_Pipeline/rTg4510_isoseq.config +source $SC_ROOT/1_IsoSeq_Pipeline/01_source_functions.sh +export PATH=$PATH:${LOGEN_ROOT}/miscellaneous +export PATH=$PATH:${LOGEN_ROOT}/assist_isoseq_processing +export PATH=$PATH:${LOGEN_ROOT}/assist_ont_processing + +J20_ALL_SAMPLE_NAMES=(B21 C20 C21 E18) + +##------------------------------------------------------------------------- + +# merging_at_refine +#merging_at_refine $WKD_ROOT/1_isoseq3/3_refine $WKD_ROOT/1_isoseq3/5_merged_cluster ${J20NAME} ${J20_ALL_SAMPLE_NAMES[@]} +#refine2fasta $WKD_ROOT/1_isoseq3/3_refine ${J20_ALL_SAMPLE_J20NAMES[@]} + +# align individual samples +# run_pbmm2align +#for i in ${J20_ALL_SAMPLE_NAMES[@]}; do run_pbmm2align $i $WKD_ROOT/1_isoseq3/4_cluster $WKD_ROOT/2_post_isoseq3/6_minimap; done + +# filter_alignment +#for i in ${J20_ALL_SAMPLE_NAMES[@]}; do filter_alignment $i $WKD_ROOT/2_post_isoseq3/6_minimap; done + +# run_map_cupcakecollapse +#run_map_cupcakecollapse ${J20NAME} $WKD_ROOT/1_isoseq3/5_merged_cluster $WKD_ROOT/2_post_isoseq3/6_minimap $WKD_ROOT/2_post_isoseq3/7_tofu + +# demux +#demux ${J20NAME} $WKD_ROOT/1_isoseq3/3_refine $WKD_ROOT/1_isoseq3/5_merged_cluster/${J20NAME}.clustered.cluster_report.csv $WKD_ROOT/2_post_isoseq3/7_tofu + + +##------------------------------------------------------------------------- + +source activate sqanti2_py3 +cd $WKD_ROOT/2_post_isoseq3/9_sqanti3 +python ${SQANTI3_DIR}/sqanti3_qc.py -t 30 $WKD_ROOT/2_post_isoseq3/7_tofu/${J20NAME}.collapsed.gff ${GENOME_GTF} ${GENOME_FASTA} --CAGE_peak ${CAGE_PEAK} --polyA_motif_list ${POLYA} --genename --isoAnnotLite --report skip &> ${J20NAME}.collapsed.sqanti.qc.log + \ No newline at end of file From 7e34c1cc870c0187b80a2c3d8af5b6189c9db47d Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 5 Feb 2024 20:03:00 +0000 Subject: [PATCH 09/29] BDR overlap 1st - Blast mouse and BDR dataset collapsed.filtered.fasta - Isoform Fraction - Trem2 focus --- .../B_cupcake_pipeline/4_blastvsBDR.sh | 68 +++++++++++++++++++ .../B_cupcake_pipeline/4b_blastvsBDR.R | 26 +++++++ Reviews/3_BDROverlap.R | 67 ++++++++++++++++++ 3 files changed, 161 insertions(+) create mode 100644 B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4_blastvsBDR.sh create mode 100644 B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4b_blastvsBDR.R create mode 100644 Reviews/3_BDROverlap.R diff --git a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4_blastvsBDR.sh b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4_blastvsBDR.sh new file mode 100644 index 0000000..b14eb1c --- /dev/null +++ b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4_blastvsBDR.sh @@ -0,0 +1,68 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --error=4_blastvsBDR.e +#SBATCH --output=4_blastvsBDR.o + + +# 05/02/2024: Blast against BDR targeted dataset (Sqanti3) + +##------------------------------------------------------------------------- + +#Blast_seq2seq +Blast_seq2seq(){ + + ### Prepared Reference Genome for BLAST + module load Miniconda2 + source activate nanopore + cd $1 + if [[ $6 == "build" ]]; then + echo "Create blast database with fasta sequence: $2" + makeblastdb -in $2 -dbtype nucl -out $3 + echo "Output file successfully generated: $2" + + ### Blast Probes to Reference Genome + # https://angus.readthedocs.io/en/2016/running-command-line-blast.html + # http://envgen.nox.ac.uk/bioinformatics/documentation/blast+/user_manual.pdf + echo "Blast Probes to indexed database with fasta sequence: $3" + if [[ $7 == "high" ]]; then + blastn -query $4 -db $3 -out $5 -outfmt 6 -evalue 1e-5 + # -outfmt "7 qacc sacc evalue qstart qend sstart send" -evalue 1e-5 + elif [[ $7 == "low" ]]; then + echo "Using low threshold for evalue" + blastn -query $4 -db $3 -out $5 -outfmt 6 -evalue 1e-2 + else + echo "Threshold required as high or low" + fi + + + # column headers:https://molevol.mbl.edu/index.php/BLAST_UNIX_Tutorial + #echo -e "Query_ID\Subject_ID\%_Identity\alignment_length\mismatches\gap\q.start\q.end\s.start\s.end\e_value\bit_score" | cat - $5 > Final_$5 + else + echo "Blast Probes to indexed database with fasta sequence: $3" + if [[ $7 == "high" ]]; then + blastn -query $4 -db $3 -out $5 -outfmt 6 -evalue 1e-5 + # -outfmt "7 qacc sacc evalue qstart qend sstart send" -evalue 1e-5 + elif [[ $7 == "low" ]]; then + echo "Using low threshold for evalue" + blastn -query $4 -db $3 -out $5 -outfmt 6 -evalue 10 + else + echo "Threshold required as high or low" + fi + fi + +} + +outputDir=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/4_characterise/BDRBlast +mousefasta=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/2_sqanti3/all_iso_ont_collapsed.filtered_counts_filtered.fa +humanfasta=/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/D_ONT/5_cupcake/7_sqanti3/ontBDR_collapsed.filtered_counts_filtered.fa +Blast_seq2seq ${outputDir} ${mousefasta} allIsoOnt.db ${humanfasta} allIsoOntBDRHigh.txt build high +Blast_seq2seq ${outputDir} ${mousefasta} allIsoOnt.db ${humanfasta} allIsoOntBDRLow.txt notbuild low + diff --git a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4b_blastvsBDR.R b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4b_blastvsBDR.R new file mode 100644 index 0000000..5e48934 --- /dev/null +++ b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/4b_blastvsBDR.R @@ -0,0 +1,26 @@ +library("dplyr") + +blastOutput <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/4_characterise/BDRBlast/allIsoOntBDRHigh.txt") +blastOutput <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/4_characterise/BDRBlast/allIsoOntBDRLow.txt") +colnames(blastOutput) <- c("human","mouse","Perc_Identity","alignment_length","mismatches", "gap","q.start","q.end","s.start","s.end","evalue","bit_score") + +classfile <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt", sep = "\t", as.is = T) + +humanclassfile <- read.table("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/E_MergedTargeted/3_sqanti3/all_iso_ont_scn_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt", sep = "\t", as.is = T) + +## Filtering requirements +# > 200bp length +# > 90% blast identity + +# filter blast hits > 200bp +filtered <- blastOutput[blastOutput$alignment_length > 200 & blastOutput$Perc_Identity > 90, ] + +topranked <- blastOutput %>% group_by(human) %>% filter(Perc_Identity == max(Perc_Identity) & bit_score == max(bit_score)) + +topranked <- merge(topranked, classfile[,c("isoform","structural_category","associated_gene","associated_transcript")], by.x = "mouse",by.y = "isoform", all.x = T) +filtered[filtered$mouse == "PB.20818.54",] + +length(unique(filtered$human)) + + + diff --git a/Reviews/3_BDROverlap.R b/Reviews/3_BDROverlap.R new file mode 100644 index 0000000..a7e0a7f --- /dev/null +++ b/Reviews/3_BDROverlap.R @@ -0,0 +1,67 @@ + +library("ggplot2") +LOGEN_ROOT = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" +SC_ROOT = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/Paper_Figures/" +source(paste0(SC_ROOT, "0_source_functions.R")) +source(paste0(SC_ROOT, "rTg4510_config.R")) +output_dir = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/01_figures_tables/Mouse_Isoseq/" + +BDRONTclass <- read.table("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/D_ONT/5_cupcake/7_sqanti3/ontBDR_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt", sep = "\t", as.is = T) +BDRONT <- readRDS("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/01_figures_tables/Ont_DESeq2TranscriptLevel.RDS") +phenotype <- +plotIFAll(Exp=Exp$targ_ont$normAll %>% select(-associated_gene), + classf=class.files$targ_all, + pheno=phenotype$targeted_rTg4510_ont, + majorIso=row.names(TargetedDIU$ontDIUGeno$keptIso)) + +TargetGene <- toupper(c("Abca1","Sorl1","Mapt","Bin1","Tardbp","App","Abca7", + "Ptk2b","Ank1","Fyn","Clu","Cd33","Fus","Picalm","Snca","Apoe","Trpa1","Rhbdf2","Trem2","Vgf")) + +tabulateIF <- function(gene, classf, countcol){ + + Counts <- classfile %>% select(isoform,contains(countcol)) + rownames(Counts) <- Counts$isoform + Counts <- Counts %>% select(-isoform) + + + # Calculate the mean of normalised expression across all the samples per isoform + meandf <- data.frame(meanvalues = apply(Counts,1,mean)) %>% + rownames_to_column("isoform") %>% + # annotate isoforms with associated_gene and structural category + left_join(., classf[,c("isoform","associated_gene","structural_category")], by = "isoform") + + # Group meandf by associated_gene and calculate the sum of mean values for each group + grouped <- aggregate(meandf$meanvalues, by=list(associated_gene=meandf$associated_gene), FUN=sum) + + # Calculate the proportion by merging back, and divide the meanvalues by the grouped values (x) + merged <- meandf %>% + left_join(grouped, by = "associated_gene") %>% + mutate(perc = meanvalues / x * 100) + return(IF) +} + +tabIFOut <- lapply(TargetGene, function(x) tabulateIF(x, BDRONTclass, "B2")) +names(tabIFOut) <- TargetGene +tabIFOut <- bind_rows(tabIFOut, .id = "associated_gene") +ggplot(tabIFOut, aes(x = associated_gene, y = "")) + +ggplot(merged, aes(x = associated_gene, y = as.numeric(perc), fill = forcats::fct_rev(structural_category))) + + geom_bar(stat = "identity", color = "black", size = 0.2) + + #scale_color_manual(values = rep(NA, length(unique(minorgrouped$gene)))) + + labs(x = "Gene", y = "Isoform fraction (%)") + + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) + + scale_fill_manual(name = "Isoform Classification", values = rev(c(alpha("#00BFC4",0.8),alpha("#00BFC4",0.3), + alpha("#F8766D",0.8),alpha("#F8766D",0.3)))) + + theme(legend.position = "None") + + +View(TREM2) + +# human BDR dataset +# ENST00000373113.8 +phenotype <- read.csv("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/0_metadata/B_ONT/Selected_ONTTargeted_BDR.csv", header = T) +BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.81888.25") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + mutate(phenotype = factor(phenotype, levels = c("Control","Intermediate_1","Intermediate_2","AD"))) %>% + ggplot(., aes(x = phenotype, y = normalised_counts)) + geom_boxplot() From 9ecdb8b30e8fb5f30449593dde68d88948fc3596 Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 12 Feb 2024 15:48:00 +0000 Subject: [PATCH 10/29] Cryptic exon final draft output --- Reviews/3_post_proteogenomics.R | 72 ++++++++++++++++++++++++++++----- Reviews/rTg4510_config.R | 8 ++-- 2 files changed, 67 insertions(+), 13 deletions(-) diff --git a/Reviews/3_post_proteogenomics.R b/Reviews/3_post_proteogenomics.R index 50a774d..10fdac8 100644 --- a/Reviews/3_post_proteogenomics.R +++ b/Reviews/3_post_proteogenomics.R @@ -10,7 +10,7 @@ suppressMessages(library("cowplot")) ## ---------- config file ----------------- -source("/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/Reviews/rTg4510_config.R") +source("/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/Reviews/rTg4510_config.R") generalggTranPlots <- function(isolist, inputgtf, classfiles, gene, cpat = NULL, species = NULL){ IsoDf <- data.frame( @@ -20,10 +20,15 @@ generalggTranPlots <- function(isolist, inputgtf, classfiles, gene, cpat = NULL, IsoDf$colour <- c(rep(NA,length(IsoDf$Category[IsoDf$Category != "DTE"]))) p <- ggTranPlots(inputgtf=inputgtf,classfiles=classfiles, isoList = c(as.character(IsoDf$Isoform)), - selfDf = IsoDf, gene = gene, cpat = cpat, species = species) + selfDf = IsoDf, gene = gene, inputCpat = cpat, cpatSpecies = species) return(p) } +label_group <- function(genotype){ + if(genotype %in% c("TG","Case","CASE")){group = "TG"}else{ + if(genotype %in% c("WT","Control","CONTROL")){group = "WT"}} + return(group) +} ## ---------- input from 2_proteogenomics.R ----------------- @@ -256,18 +261,27 @@ InternalNovelExons <- lapply(InternalNovelExons, function(x) x %>% mutate(coding InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, nmd[,c("pb","is_nmd","has_stop_codon")], by.x = "transcriptID", by.y = "pb",all.x=TRUE)) -plotCE <- function(gene){ + +plotCE <- function(gene, type){ representative <- as.data.frame(gtf$ref_target %>% filter(type == "transcript" & transcript_type == "protein_coding") %>% group_by(gene_name) %>% top_n(1, width)) allRep <- as.data.frame(gtf$ref_target) # manual drop gene print(gene) df <- InternalNovelExons[[gene]] if(gene == "Apoe"){ - df <- df[df$transcriptID == "PB.40586.26305",] + # PB.40586.2026 = reference match ("PB.40586.2026") + df <- df[df$transcriptID %in% c("PB.40586.26305"),] + ref <-data.frame("PB.40586.2026",NA,NA,NA,NA,NA,"coding","False","True") + colnames(ref) <- colnames(df) + df <- rbind(df, ref) }else if(gene == "Bin1"){ df <- df[df$transcriptID %in% paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")),] }else if(gene == "Clu"){ df <- df[df$transcriptID %in% paste0("PB.14646.",c("6992")),] + # PB.40586.2026 = reference match ("PB.14646.139", "PB.14646.483") + ref <- data.frame("PB.14646.139",NA,NA,NA,NA,NA,"coding","False","True") + colnames(ref) <- colnames(df) + df <- rbind(df, ref) }else if(gene == "Snca"){ df <- df[df$transcriptID %in% paste0("PB.38419.",c("3145")),] }else if(gene == "Trem2"){ @@ -275,21 +289,61 @@ plotCE <- function(gene){ }else{ return(NULL) } - - p <- list( + transcriptList <- list( #Reference = c("ENSMUST00000024791.14","ENSMUST00000113237.3"), Reference = unique(allRep[allRep$gene_name == gene, "transcript_id"]), #Reference = representative[ representative$gene_name == gene, "transcript_id"], `not NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "False") %>% .[,c("transcriptID")])), `NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "True") %>% .[,c("transcriptID")])), `non-coding` = as.character(unique(df %>% filter(coding == "noncoding") %>% .[,c("transcriptID")])) - ) %>% generalggTranPlots(., gtf$targ_merged, class.files$targ_filtered, gene) + ) + proteinList <- list( + #Reference = unique(allRep[allRep$gene_name == gene, "transcript_id"]), + `not NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`not NMD`) %>% .[["gene_id"]]), + `NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`NMD`) %>% .[["gene_id"]]), + `non-coding` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`non-coding`) %>% .[["gene_id"]])) + if(type == "transcript"){ + p <- generalggTranPlots(transcriptList, gtf$targ_merged, class.files$targ_filtered, gene) + }else if(type == "protein"){ + p <- generalggTranPlots(proteinList, gtf$targ_merged, class.files$targ_filtered, gene) + }else{ + bothList <- c(transcriptList, proteinList) + p <- generalggTranPlots(bothList, gtf$targ_merged, class.files$targ_filtered, gene) + } + return(p) } -pInternalNovelExons <- lapply(names(InternalNovelExons), function(x) plotCE(x)) -names(pInternalNovelExons) <- names(InternalNovelExons) +pInternalNovelExonsTranscript <- lapply(names(InternalNovelExons), function(x) plotCE(x,"transcript")) +names(pInternalNovelExonsTranscript) <- names(InternalNovelExons) + +pInternalNovelExonsProtein <- lapply(names(InternalNovelExons), function(x) plotCE(x,"protein")) +names(pInternalNovelExonsProtein) <- names(InternalNovelExons) + +pInternalNovelExonsProteinBoth <- lapply(names(InternalNovelExons), function(x) plotCE(x,"proteinTranscript")) +names(pInternalNovelExonsProteinBoth) <- names(InternalNovelExons) + +pdf(paste0(dirnames$targ_output,"/CrypticExonsApoe.pdf"), width = 10, height = 8) +pInternalNovelExonsProteinBoth$Apoe +dev.off() + +pdf(paste0(dirnames$targ_output,"/CrypticExonsClu.pdf"), width = 10, height = 8) +pInternalNovelExonsProteinBoth$Clu +dev.off() + +pdf(paste0(dirnames$targ_output,"/CrypticExonsTrem2.pdf"), width = 10, height = 8) +pInternalNovelExonsProteinBoth$Trem2 +dev.off() + +pdf(paste0(dirnames$targ_output,"/CrypticExonsBin1.pdf"), width = 10, height = 8) +pInternalNovelExonsProteinBoth$Bin1 +dev.off() + +pdf(paste0(dirnames$targ_output,"/CrypticExonsSnca.pdf"), width = 10, height = 4) +pInternalNovelExonsProteinBoth$Snca +dev.off() + ## ---------- output (pdf) ----------------- diff --git a/Reviews/rTg4510_config.R b/Reviews/rTg4510_config.R index 36913c6..32801e9 100644 --- a/Reviews/rTg4510_config.R +++ b/Reviews/rTg4510_config.R @@ -2,7 +2,7 @@ suppressMessages(library("data.table")) suppressMessages(library("stringr")) -LOGEN <- "/lustre/projects/Research_Project-MRC148213/sl693/scripts/LOGen" +LOGEN <- "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen" source(paste0(LOGEN, "/aesthetics_basics_plots/pthemes.R")) source(paste0(LOGEN, "/aesthetics_basics_plots/draw_density.R")) source(paste0(LOGEN,"/transcriptome_stats/read_sq_classification.R")) @@ -29,7 +29,7 @@ TargetGene <- c("Abca1","Sorl1","Mapt","Bin1","Tardbp","App","Abca7", ## --------------------------- # directory names -root_dir <- "/lustre/projects/Research_Project-MRC148213/sl693/" +root_dir <- "/lustre/projects/Research_Project-MRC148213/lsl693/" dirnames <- list( # global transcriptome (Iso-Seq, Iso-Seq + RNA-Seq) glob_root = paste0(root_dir, "rTg4510/A_IsoSeq_Whole"), @@ -41,7 +41,7 @@ dirnames <- list( protein = paste0(root_dir, "rTg4510/G_Merged_Targeted/4_proteogenomics/"), # reference - references = paste0(root_dir,"reference/annotation") + references = paste0(root_dir,"references/annotation") ) ## ------------- Phenotype files ------------------- @@ -113,7 +113,7 @@ gtf$targ_merged <- rbind(gtf$targ_merged[,c("seqnames","strand","start","end","t ## -------- FICLE output ------------------- #Maptprotein <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Mapt","corrected_acc"]) -FICLE_dir <- "/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/G_Merged_Targeted/4_characterise/TargetGenes" +FICLE_dir <- "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/4_characterise/TargetGenes" MaptES <- read.csv(paste0(FICLE_dir, "/Mapt/Stats/Mapt_general_exon_level.csv")) Trem2ES <- read.csv(paste0(FICLE_dir, "/Trem2/Stats/Trem2_general_exon_level.csv")) From 9e20ce1e98e33d96f6517deed4701ead2bed6848 Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 12 Feb 2024 15:48:20 +0000 Subject: [PATCH 11/29] BDR draft overlap Bin1, Trem2, Clu --- Reviews/3_BDROverlap.R | 110 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 104 insertions(+), 6 deletions(-) diff --git a/Reviews/3_BDROverlap.R b/Reviews/3_BDROverlap.R index a7e0a7f..91a5bea 100644 --- a/Reviews/3_BDROverlap.R +++ b/Reviews/3_BDROverlap.R @@ -17,9 +17,9 @@ plotIFAll(Exp=Exp$targ_ont$normAll %>% select(-associated_gene), TargetGene <- toupper(c("Abca1","Sorl1","Mapt","Bin1","Tardbp","App","Abca7", "Ptk2b","Ank1","Fyn","Clu","Cd33","Fus","Picalm","Snca","Apoe","Trpa1","Rhbdf2","Trem2","Vgf")) -tabulateIF <- function(gene, classf, countcol){ +tabulateIF <- function(gene, classf, countcol, genespecific=NULL){ - Counts <- classfile %>% select(isoform,contains(countcol)) + Counts <- classf %>% select(isoform,contains(countcol)) rownames(Counts) <- Counts$isoform Counts <- Counts %>% select(-isoform) @@ -28,16 +28,19 @@ tabulateIF <- function(gene, classf, countcol){ meandf <- data.frame(meanvalues = apply(Counts,1,mean)) %>% rownames_to_column("isoform") %>% # annotate isoforms with associated_gene and structural category - left_join(., classf[,c("isoform","associated_gene","structural_category")], by = "isoform") + left_join(., classf[,c("isoform","associated_gene","structural_category")], by = "isoform") + # Group meandf by associated_gene and calculate the sum of mean values for each group grouped <- aggregate(meandf$meanvalues, by=list(associated_gene=meandf$associated_gene), FUN=sum) # Calculate the proportion by merging back, and divide the meanvalues by the grouped values (x) - merged <- meandf %>% + IF <- meandf %>% left_join(grouped, by = "associated_gene") %>% mutate(perc = meanvalues / x * 100) + return(IF) + } tabIFOut <- lapply(TargetGene, function(x) tabulateIF(x, BDRONTclass, "B2")) @@ -60,8 +63,103 @@ View(TREM2) # human BDR dataset # ENST00000373113.8 phenotype <- read.csv("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/0_metadata/B_ONT/Selected_ONTTargeted_BDR.csv", header = T) -BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.81888.25") %>% filter(grepl("B2", sample)) %>% +Trem2TranscriptBDR <- BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.81888.25") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) + +t.test(normalised_counts ~ phenotype, data = Trem2TranscriptBDR %>% filter(sample != "BBN00229416.1")) + +summary(lm(normalised_counts ~ phenotype, data = Trem2TranscriptBDR %>% filter(sample != "BBN00229416.1"))) +ggplot(Trem2TranscriptBDR, aes(x = phenotype, y = normalised_counts)) + geom_boxplot() + +bdrGtf <- as.data.frame(rtracklayer::import("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/D_ONT/5_cupcake/7_sqanti3/ontBDR_collapsed.filtered_counts_filtered.gtf")) +refGtf <- as.data.frame(rtracklayer::import("/lustre/projects/Research_Project-MRC148213/lsl693/references/human/CLU.gencode.v40.annotation.gtf")) +gtf$humanMerged <- rbind(bdrGtf [,c("seqnames","strand","start","end","type","transcript_id","gene_id")], + refGtf [,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) + +ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.92671.402","PB.92671.1702","ENST00000316403.15"),simple=TRUE, colour = c("blue","red", "red")) + +CluTranscriptBDR <- BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.92671.402") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) +ggplot(CluTranscriptBDR, aes(x = phenotype, y = normalised_counts)) + geom_boxplot() + +BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.92671.402") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% + ggplot(., aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() + +CluNE <- paste0("PB.92671.",c("689","1693","3228","4691","3474","1988","1778","1875","1860","3549","4725")) +ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.92671.402",CluNE ),simple=TRUE, colour = c("blue",rep("red",12))) + +CluAF <- paste0("PB.92671.",c("2479","26717")) + +BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.92671.26717") %>% filter(grepl("B2", sample)) %>% mutate(sample = str_remove(sample, "B2.")) %>% left_join(., phenotype, by = "sample") %>% - mutate(phenotype = factor(phenotype, levels = c("Control","Intermediate_1","Intermediate_2","AD"))) %>% + mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% + ggplot(., aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() + +BDRONTclass %>% select(isoform, contains("B2")) %>% + map_if(is.numeric, ~./sum(.) * 100) %>% + as_data_frame() %>% + filter(isoform == "PB.92671.402") %>% + reshape2::melt(variable.name = "sample", value.name = "perc") %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype[,c("sample","BraakTangle_numeric")], by = "sample") %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + ggplot(., aes(x = as.factor(BraakTangle_numeric), y = perc)) + geom_boxplot() + + +## Bin1 +ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.50706.8", "PB.50706.13"),simple=TRUE, colour = c("blue",rep("red",12))) +BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.50706.8") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% + ggplot(., aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() + +BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.50706.8") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% ggplot(., aes(x = phenotype, y = normalised_counts)) + geom_boxplot() + + +BDRONTclass %>% select(isoform, contains("B2")) %>% + map_if(is.numeric, ~./sum(.) * 100) %>% + as_data_frame() %>% + filter(isoform == "PB.50706.8") %>% + reshape2::melt(variable.name = "sample", value.name = "perc") %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype[,c("sample","BraakTangle_numeric")], by = "sample") %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + ggplot(., aes(x = as.factor(BraakTangle_numeric), y = perc)) + geom_boxplot() + +dat <- BDRONTclass %>% select(isoform, contains("B2")) %>% + map_if(is.numeric, ~./sum(.) * 100) %>% + as_data_frame() %>% + filter(isoform == "PB.50706.8") %>% + reshape2::melt(variable.name = "sample", value.name = "perc") %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) +ggplot(dat, aes(x = phenotype, y = perc)) + geom_boxplot() +dat <- dat %>% filter(perc < 2) +summary(lm(perc ~ phenotype, data = dat)) + +model = lm(perc ~ phenotype, data = dat, family = "binomial") +plot(model) + +BDRONTclass[BDRONTclass$isoform == "PB.50706.8",] +BDRONTclass[BDRONTclass$isoform == "PB.50706.13",] From b52c2914f28b5a3cf920aa392241a61ba4fd358c Mon Sep 17 00:00:00 2001 From: sl693 Date: Mon, 12 Feb 2024 16:32:51 +0000 Subject: [PATCH 12/29] demux sorted nuclei data: NeuN + DN --- .../01_source_functions.sh | 277 ++++++++++++++++++ D_sortedNuclei_Transcriptome/1a_demux.sh | 42 +++ D_sortedNuclei_Transcriptome/1b_demux.sh | 42 +++ .../rTg4510_snont.config | 52 ++++ 4 files changed, 413 insertions(+) create mode 100755 D_sortedNuclei_Transcriptome/01_source_functions.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1b_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/rTg4510_snont.config diff --git a/D_sortedNuclei_Transcriptome/01_source_functions.sh b/D_sortedNuclei_Transcriptome/01_source_functions.sh new file mode 100755 index 0000000..87ffcdd --- /dev/null +++ b/D_sortedNuclei_Transcriptome/01_source_functions.sh @@ -0,0 +1,277 @@ +################################################################################################ +# 1) run_QC + + +################################################################################################ + + +module load Miniconda2/4.3.21 + +# 1) run_merge +# output: .merged.fastq in $RAWDATA (defined in functions script) +run_merge(){ + + source activate nanopore + + echo "Merging following fastq files" + FASTQ=$(ls $1/*) + echo ${FASTQ} + + cat ${FASTQ} > $2 + echo "Merge of Samples successful: output to $2" + +} + +merge_fastq_across_samples(){ + # variables + gval=$1 + input_dir=$2 + output_dir=$3 + + echo "Merging ${gval}" + + fastq=$(for f in ${input_dir}/*; do ls $f/*${gval}*; done) + cat ${fastq} > ${output_dir}/${gval}_merged.fastq +} + +# 2) run_QC +run_QC(){ + # variables + sample=$1 + sequencing_summary=$2 + bam_input=$3 + output_dir=$4 + + source activate nanopore + echo "Processing: $1" + cd $output_dir + pycoQC --summary_file $sequencing_summary --bam_file $bam_input -o $sample"_QC.html" + Rscript ${MINIONQC} -i $sequencing_summary -s TRUE -o $output_dir + source deactivate +} + +# 3) run_porechop +# input: .fastq.gz +# output: with barcodes demultiplexed +run_porechop(){ + + source activate nanopore + sample=$(basename $1) + + echo "Processing Sample $sample for Porechop" + python ${PORECHOP} -i $1 -b $2 --format fastq --threads 16 \ + --check_reads 1000 \ + --discard_middle \ + --end_size 100 \ + --min_trim_size 15 \ + --extra_end_trim 1 \ + --end_threshold 75 \ + --verbosity 2 +} + + +# 4) post_porechop_run_cutadapt +post_porechop_run_cutadapt(){ + + input_dir=$(dirname $1) + name=$(basename $1 .fastq) + + source activate nanopore + + # requires fasta files for downstream + echo "Converting $1 to fasta" + seqtk seq -a $1 > ${input_dir}/${name}.fasta + + # subset fasta file to polyA and polyT fasta (i.e. reads ending with PolyA and starting with polyT) + # reads that end with AAAAAAAAAA = plus reads + # reads that start with TTTTTTTTTT = minus reads (need to be reverse complemented) + echo "Subsetting fasta to polyA and polyT sequences" + python ${SUBSETPOLYTAILS} --fa ${input_dir}/${name}.fasta --o_name ${name} --o_dir $2 + + # working in output directory + cd $2 + + # reverse complement minus reads (reads ending with polyT) + seqtk seq -r ${name}_PolyT.fasta > ${name}_PolyT_rev.fasta + + # use cutadapt package to trim polyA + echo "Remove polyA sequences using cutadapt" + cutadapt -a "A{60}" ${name}_PolyA.fasta -o ${name}_PolyA_cutadapted.fasta &> ${name}_polyA_cutadapt.log + cutadapt -a "A{60}" ${name}_PolyT_rev.fasta -o ${name}_PolyT_rev_cuptadapted.fasta &> ${name}_polyT_cutadapt.log + + # concatenated reverse minus polyT and polyA reads + cat ${name}_PolyA_cutadapted.fasta ${name}_PolyT_rev_cuptadapted.fasta > ${name}_combined.fasta + + source deactivate +} + + +# 6) run_minimap2 +# Aim: Align reads from trimming, filtering to genome of interest using Minimap2 +# Input: _combined_reads.fasta +# Output: _combined_reads.sam, _Minimap2.log +run_minimap2(){ + + source activate nanopore + + name=$(basename $1 .fasta) + echo "Aligning ${name} using Minimap2" + + minimap2 -t 46 -ax splice ${GENOME_FASTA} $1 > $2/${name}.sam 2> $2/${name}_minimap2.log + samtools sort -O SAM $2/${name}.sam > $2/${name}_sorted.sam + + source deactivate +} + + +# run_transcriptclean +run_transcriptclean(){ + + source activate sqanti2_py3 + + name=$(basename $1 _merged_combined_sorted.sam) + echo "TranscriptClean ${name}" + + cd $2; mkdir -p ${name} + cd $2/${name} + python ${TCLEAN} --sam $1 --genome ${GENOME_FASTA} --outprefix $2/${name}/${name} --tmpDir $2/${name}/${name}_tmp +} + +# filter_alignment +filter_alignment(){ + + source activate nanopore + + cd $2 + echo "Converting bam to sam and sort" + samtools view -h $1.bam > $1.sam + samtools bam2fq $1.bam| seqtk seq -A > $1.fa + samtools sort -O SAM $1.sam > $1.sorted.sam + + # Alignment stats + # Use the inforation in the paf file to create a new file where the columns correspond to the following: + #col1: name of the nanopore read + #col2: name of the sequence where nanopore read aligns (target sequence) + #col3: start position of the alignment on the target sequence + #col4: length of the original nanopore read + #col5: length of the aligned part of the nanopore read + #col6: fraction of the aligned part of the nanopore read over the orginal length + #col7: fraction of the aligned part of the target sequence over the orginal length of the target sequence + #col8: strand where the nanopore read aligns + #col8: number of matched nucleotides of the nanopore read alignment on the target sequence + #col9: identity (percentage of matched nucleotides over the aligned length of the nanopore read) + #col10: number of mismatches of the nanopore read alignment on the target sequence + #col11: number of insertions of the nanopore read alignment on the target sequence + #col12: number of deletions of the nanopore read alignment on the target sequence + + echo "Dissecting alignment statistics" + mkdir -p PAF; cd PAF + htsbox samview -pS $2/$1.sorted.sam > $1.paf + awk -F'\t' '{if ($6!="*") {print $0}}' $1.paf > $1.filtered.paf + awk -F'\t' '{print $1,$6,$8+1,$2,$4-$3,($4-$3)/$2,$10,($10)/($4-$3),$5,$13,$15,$17}' $1.filtered.paf | sed -e s/"mm:i:"/""/g -e s/"in:i:"/""/g -e s/"dn:i:"/""/g | sed s/" "/"\t"/g > $1"_mappedstats.txt" + ## filter based on alignable length (>0.85) and identity (>0.95) + awk -F'\t' '{if ($6>=0.85 && $8>=0.95) {print $1}}' $1"_mappedstats.txt" > $1_filteredreads.txt + + source activate sqanti2 + picard FilterSamReads I=$2/$1.bam O=$2/$1.filtered.bam READ_LIST_FILE=$2/PAF/$1_filteredreads.txt FILTER=includeReadList &> $2/PAF/$1.picard.log + + source activate nanopore + samtools bam2fq $2/$1.filtered.bam| seqtk seq -A > $2/$1.filtered.fa + samtools sort -O SAM $2/$1.filtered.bam -o $2/$1.filtered.sorted.bam + + # https://bioinformatics.stackexchange.com/questions/3380/how-to-subset-a-bam-by-a-list-of-qnames + #source activate nanopore + #samtools view $2/$1.bam | grep -f $1_filteredreads.txt > $1.filtered.sam + #samtools view -bS $1.filtered.sam > $1.filtered.bam + #samtools bam2fq $2/$1.filtered.bam| seqtk seq -A > $2/$1.filtered.fa + +} + + +# run_talon_label +run_talon_label(){ + + name=$(basename $1 _clean.sam) + echo "Label ${name} for TALON" + + source activate sqanti2_py3 + talon_label_reads --f $1 --g ${GENOME_FASTA} --t 1 --ar 20 --tmpDir=$2/${name}_label_reads --o $2/${name} + + # convert sam to fasta + source activate nanopore + cd $2 + samtools view -bS ${name}_labeled.sam > ${name}_labelled.bam + samtools bam2fq ${name}_labelled.bam | seqtk seq -A > ${name}_labelled.fasta + + source deactivate +} + + +# run_talon +run_talon(){ + + source activate sqanti2_py3 + + output_dir=$(dirname $1) + + cd $output_dir + echo "Running talon using ${TALON_DB}/${SPECIES}_talon.db" + talon --f $1 --db ${TALON_DB}/${SPECIES}_talon.db --build ${SPECIES} --o ${NAME} +} + +#post_talon +post_talon(){ + + source activate sqanti2_py3 + cd $1; mkdir -p 1_unfiltered 2_filtered + + talon_cmd=$(echo --db ${TALON_DB}/${SPECIES}_talon.db -a ${SPECIES}_annot --build ${SPECIES}) + + # Unfiltered dataset + echo "Generate abundance and gtf file for unfiltered dataset" + cd $1/1_unfiltered + talon_abundance ${talon_cmd} --o ${NAME}_unfiltered + talon_create_GTF ${talon_cmd} --o ${NAME}_unfiltered + + echo "Filtering transcripts using all samples" + cd $1/2_filtered + datasets=$(echo ${TALON_FILTER_SAMPLES[@]} | tr ' ' ,) + talon_filter_transcripts --db ${TALON_DB}/${SPECIES}_talon.db --datasets ${datasets} -a ${SPECIES}_annot --maxFracA 0.5 --minCount 5 --minDatasets 2 --o $1/2_filtered/filtered_transcripts.csv + + # Filtered dataset + echo "Generate abundance and gtf file for filtered dataset" + talon_abundance ${talon_cmd} --whitelist $1/2_filtered/filtered_transcripts.csv --o ${NAME}_filtered + talon_create_GTF ${talon_cmd} --whitelist $1/2_filtered/filtered_transcripts.csv --o ${NAME}_filtered + + source deactivate +} + + +# run_sqanti3 +run_sqanti3(){ + + source activate sqanti2_py3 + + name=$(basename $1 .gtf) + + cd $2 + + # sqanti qc + echo "Processing Sample ${name} for SQANTI3 QC" + python $SQANTI3_DIR/sqanti3_qc.py -v + echo ${GENOME_GTF} + echo ${GENOME_FASTA} + + python $SQANTI3_DIR/sqanti3_qc.py -t 30 --gtf $1 ${GENOME_GTF} ${GENOME_FASTA} \ + --cage_peak ${CAGE_PEAK} \ + --polyA_motif_list ${POLYA} \ + --genename --isoAnnotLite --gff3 $GFF3 --report pdf &> ${name}.sqanti.qc.log + + echo "Processing Sample ${name} for SQANTI filter" + python $SQANTI3_DIR/sqanti3_RulesFilter.py ${name}"_classification.txt" ${name}"_corrected.fasta" ${name}"_corrected.gtf" -a 0.6 -c 3 &> ${name}.sqanti.filter.log + + Rscript ${SQ_Report} $2/${name}"_classification.txt" $2/${name}"_junctions.txt" + Rscript ${SQ_Report} $2/${name}"_classification.filtered_lite_classification.txt" $2/${name}"_classification.filtered_lite_junctions.txt" + + source deactivate +} diff --git a/D_sortedNuclei_Transcriptome/1a_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux.sh new file mode 100644 index 0000000..b38d90a --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux.sh @@ -0,0 +1,42 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=144:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --array=0-7774%20 +#SBATCH --output=/Output/1log/1a_demux-%A_%a.o +#SBATCH --error=./Output/1log/1a_demux-%A_%a.e + + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} +Sample=$(basename ${SamplePath} .fastq.gz) + +echo "Processing ${Sample}" + +# 3) run_porechop +mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log +run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1b_demux.sh b/D_sortedNuclei_Transcriptome/1b_demux.sh new file mode 100644 index 0000000..f01c18f --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1b_demux.sh @@ -0,0 +1,42 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=144:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --array=0-4429%10 +#SBATCH --output=/Output/1log/1b_demux-%A_%a.o +#SBATCH --error=./Output/1log/1b_demux-%A_%a.e + + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 4430 fastq files in RAW_FASTQ_2 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq2_files=($(ls ${RAW_FASTQ_2}/*fastq.gz)) +#echo "${#raw_fastq2_files[@]}" + +SamplePath=${raw_fastq2_files[${SLURM_ARRAY_TASK_ID}]} +Sample=$(basename ${SamplePath} .fastq.gz) + +echo "Processing ${Sample}" + +# 3) run_porechop +mkdir -p ${WKD_ROOT}/1_demultiplex/DN/log +run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/DN/${Sample} > ${WKD_ROOT}/1_demultiplex/DN/log/${Sample}.log \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/rTg4510_snont.config b/D_sortedNuclei_Transcriptome/rTg4510_snont.config new file mode 100644 index 0000000..3a9fb69 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/rTg4510_snont.config @@ -0,0 +1,52 @@ +## --------------------------- +## +## Script name: rTg4510_ont.config +## +## Purpose of script: +## +## Author: Szi Kay Leung +## +## Date Created: 12-02-2024 +## +## Email: sl693@exeter.ac.uk +## +## --------------------------- +## +## Notes: +## +## +## +## --------------------------- + +## --------------------------- + +## Output name and relevant info +export NAME=ONTTargeted + +## Output root directory filepath (ensure path exists) +export rTg4510_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510 +export WKD_ROOT=$rTg4510_ROOT/H_Sorted_Nuclei +export rTG4510_SC=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510 + +## --------------------------- + +## Reference +export REFERENCE=/lustre/projects/Research_Project-MRC148213/lsl693/references +export GENOME_FASTA=$REFERENCE/mouse/mm10.fa +export GENOME_GTF=$REFERENCE/annotation/gencode.vM22.annotation.gtf +export STAR_REFERENCE_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/references/STAR_main + +## --------------------------- + +## Long read data (ONT Targeted) +export RAW_ROOT_DIR=/lustre/projects/Research_Project-MRC190311/longReadSeq/ONTRNA/sorted_nuclei/RNA/mouse +# NeuN +export RAW_FASTQ_1=${RAW_ROOT_DIR}/NeuN/NeuN/20240207_1339_3D_PAU69826_5fdf4c14/fastq_pass +export RAW_FASTQ_2=${RAW_ROOT_DIR}/DN/20240207_1336_2C_PAU74161_a82a4529/fastq_pass + + +## --------------------------- + +## filepaths +cd ${WKD_ROOT}; mkdir -p 1_demultiplex 2_cutadapt_merge 3_minimap 4_tclean +cd ${WKD_ROOT}/1_demultiplex; mkdir -p NeuN DN \ No newline at end of file From 1a36a84707b15e8554511ed6be15617217b6b735 Mon Sep 17 00:00:00 2001 From: sl693 Date: Fri, 23 Feb 2024 19:01:06 +0000 Subject: [PATCH 13/29] Add sorted nuclei demux scripts for DN and NeuN - Batched into 10 scripts to run for NeuN --- .../{1a_demux.sh => 1a_demux/1a10_demux.sh} | 27 ++++++------ .../1a_demux/1a11_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a1_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a2_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a3_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a4_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a5_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a6_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a7_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a8_demux.sh | 41 ++++++++++++++++++ .../1a_demux/1a9_demux.sh | 42 +++++++++++++++++++ D_sortedNuclei_Transcriptome/1b_demux.sh | 27 ++++++------ .../1c_checksamples.R | 19 +++++++++ 13 files changed, 457 insertions(+), 27 deletions(-) rename D_sortedNuclei_Transcriptome/{1a_demux.sh => 1a_demux/1a10_demux.sh} (65%) create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a11_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a1_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a2_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a3_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a4_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a5_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a6_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a7_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a8_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1a_demux/1a9_demux.sh create mode 100644 D_sortedNuclei_Transcriptome/1c_checksamples.R diff --git a/D_sortedNuclei_Transcriptome/1a_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a10_demux.sh similarity index 65% rename from D_sortedNuclei_Transcriptome/1a_demux.sh rename to D_sortedNuclei_Transcriptome/1a_demux/1a10_demux.sh index b38d90a..ac60caf 100644 --- a/D_sortedNuclei_Transcriptome/1a_demux.sh +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a10_demux.sh @@ -2,18 +2,15 @@ #SBATCH --export=ALL # export all environment variables to the batch job #SBATCH -D . # set working directory to . #SBATCH -p mrcq # submit to the parallel queue -#SBATCH --time=144:00:00 # maximum walltime for the job +#SBATCH --time=10:00:00 # maximum walltime for the job #SBATCH -A Research_Project-MRC148213 # research project to submit under #SBATCH --nodes=1 # specify number of nodes #SBATCH --ntasks-per-node=12 # specify number of processors per node #SBATCH --mem=200G # specify bytes of memory to reserve -#SBATCH --ntasks-per-node=16 # specify number of processors per node #SBATCH --mail-type=END # send email at job completion #SBATCH --mail-user=sl693@exeter.ac.uk # email address -#SBATCH --array=0-7774%20 -#SBATCH --output=/Output/1log/1a_demux-%A_%a.o -#SBATCH --error=./Output/1log/1a_demux-%A_%a.e - +#SBATCH --output=1a10_demux.o +#SBATCH --error=1a10_demux.e # 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples # 7775 fastq files in RAW_FASTQ_1 dir @@ -32,11 +29,13 @@ source $SC_ROOT/01_source_functions.sh raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) echo "${#raw_fastq1_files[@]}" -SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} -Sample=$(basename ${SamplePath} .fastq.gz) - -echo "Processing ${Sample}" - -# 3) run_porechop -mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log -run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log \ No newline at end of file +for SLURM_ARRAY_TASK_ID in {7661..7774}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a11_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a11_demux.sh new file mode 100644 index 0000000..7376312 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a11_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=3:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a11_demux.o +#SBATCH --error=1a11_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir +# missing samples after processing the first 10 batches + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +missingSamplesFile=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/1_demultiplex/NeuN/missingSamples.txt +missingSamples=($(awk -F "\"*,\"*" '{print $1}' ${missingSamplesFile})) + +for Sample in ${missingSamples[@]}; do + SamplePath=${RAW_FASTQ_1}/${Sample}.fastq.gz + echo "Processing ${Sample}" + #ls ${SamplePath} + + # 3) run_porechop + #mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a1_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a1_demux.sh new file mode 100644 index 0000000..ca71f9e --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a1_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a1_demux.o +#SBATCH --error=1a1_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {0..500}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a2_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a2_demux.sh new file mode 100644 index 0000000..f42a939 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a2_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a2_demux.o +#SBATCH --error=1a2_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {501..1000}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a3_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a3_demux.sh new file mode 100644 index 0000000..1731854 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a3_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a3_demux.o +#SBATCH --error=1a3_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {1001..1500}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a4_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a4_demux.sh new file mode 100644 index 0000000..88df9f9 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a4_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a4_demux.o +#SBATCH --error=1a4_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {1501..2000}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a5_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a5_demux.sh new file mode 100644 index 0000000..1d9fa41 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a5_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a5_demux.o +#SBATCH --error=1a5_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {2001..3000}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a6_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a6_demux.sh new file mode 100644 index 0000000..68b8177 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a6_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a6_demux.o +#SBATCH --error=1a6_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {3001..4000}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a7_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a7_demux.sh new file mode 100644 index 0000000..e5b0dac --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a7_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a7_demux.o +#SBATCH --error=1a7_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {4001..5000}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a8_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a8_demux.sh new file mode 100644 index 0000000..46f9b63 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a8_demux.sh @@ -0,0 +1,41 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a8_demux.o +#SBATCH --error=1a8_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {5001..6000}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1a_demux/1a9_demux.sh b/D_sortedNuclei_Transcriptome/1a_demux/1a9_demux.sh new file mode 100644 index 0000000..ec35cc3 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1a_demux/1a9_demux.sh @@ -0,0 +1,42 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=12 # specify number of processors per node +#SBATCH --mem=200G # specify bytes of memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1a9_demux.o +#SBATCH --error=1a9_demux.e + +# 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples +# 7775 fastq files in RAW_FASTQ_1 dir +# timed out at 10hours after 1666 files (6001 - 7667) + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + + +##------------------------------------------------------------------------- + +raw_fastq1_files=($(ls ${RAW_FASTQ_1}/*fastq.gz)) +echo "${#raw_fastq1_files[@]}" + +for SLURM_ARRAY_TASK_ID in {6001..7774}; do + SamplePath=${raw_fastq1_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/NeuN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/NeuN/${Sample} > ${WKD_ROOT}/1_demultiplex/NeuN/log/${Sample}.log +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1b_demux.sh b/D_sortedNuclei_Transcriptome/1b_demux.sh index f01c18f..e494a12 100644 --- a/D_sortedNuclei_Transcriptome/1b_demux.sh +++ b/D_sortedNuclei_Transcriptome/1b_demux.sh @@ -6,13 +6,10 @@ #SBATCH -A Research_Project-MRC148213 # research project to submit under #SBATCH --nodes=1 # specify number of nodes #SBATCH --ntasks-per-node=12 # specify number of processors per node -#SBATCH --mem=200G # specify bytes of memory to reserve -#SBATCH --ntasks-per-node=16 # specify number of processors per node #SBATCH --mail-type=END # send email at job completion #SBATCH --mail-user=sl693@exeter.ac.uk # email address -#SBATCH --array=0-4429%10 -#SBATCH --output=/Output/1log/1b_demux-%A_%a.o -#SBATCH --error=./Output/1log/1b_demux-%A_%a.e +#SBATCH --output=1b_demux.o +#SBATCH --error=1b_demux.e # 12/02/2024: NeuN rTg4510 whole transcriptome dataset across 8 samples @@ -32,11 +29,15 @@ source $SC_ROOT/01_source_functions.sh raw_fastq2_files=($(ls ${RAW_FASTQ_2}/*fastq.gz)) #echo "${#raw_fastq2_files[@]}" -SamplePath=${raw_fastq2_files[${SLURM_ARRAY_TASK_ID}]} -Sample=$(basename ${SamplePath} .fastq.gz) - -echo "Processing ${Sample}" - -# 3) run_porechop -mkdir -p ${WKD_ROOT}/1_demultiplex/DN/log -run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/DN/${Sample} > ${WKD_ROOT}/1_demultiplex/DN/log/${Sample}.log \ No newline at end of file +for SLURM_ARRAY_TASK_ID in {0..4429}; do + echo $SLURM_ARRAY_TASK_ID + SamplePath=${raw_fastq2_files[${SLURM_ARRAY_TASK_ID}]} + Sample=$(basename ${SamplePath} .fastq.gz) + + echo "Processing ${Sample}" + + # 3) run_porechop + mkdir -p ${WKD_ROOT}/1_demultiplex/DN/log + run_porechop ${SamplePath} ${WKD_ROOT}/1_demultiplex/DN/${Sample} > ${WKD_ROOT}/1_demultiplex/DN/log/${Sample}.log + +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/1c_checksamples.R b/D_sortedNuclei_Transcriptome/1c_checksamples.R new file mode 100644 index 0000000..0156035 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/1c_checksamples.R @@ -0,0 +1,19 @@ +library("stringr") +fast5Samples <- data.table::fread("/lustre/projects/Research_Project-MRC190311/longReadSeq/ONTRNA/sorted_nuclei/RNA/mouse/NeuN/NeuN/20240207_1339_3D_PAU69826_5fdf4c14/fastq_pass/Samples.txt", data.table = FALSE, col.names = c("Sample")) +demuxSamples <- data.table::fread("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/1_demultiplex/NeuN/processedSamples.txt", data.table = FALSE, col.names = c("Sample")) + +demuxSamples <- data.table::fread("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/1_demultiplex/NeuN/processedSamples2.txt", data.table = FALSE, col.names = c("Sample")) + + +fast5Samples <- str_remove(fast5Samples$Sample,".fastq.gz") +setdiff(demuxSamples$Sample, fast5Samples) +setdiff(fast5Samples,demuxSamples$Sample) +missingSamples <- setdiff(fast5Samples,demuxSamples$Sample)[1:39] +write.table(missingSamples,"/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/1_demultiplex/NeuN/missingSamples.txt", quote=F, row.names=F, col.names = F) + + +fast5Samples <- data.table::fread("/lustre/projects/Research_Project-MRC190311/longReadSeq/ONTRNA/sorted_nuclei/RNA/mouse/DN/20240207_1336_2C_PAU74161_a82a4529/fastq_pass/Samples.txt", data.table = FALSE, col.names = c("Sample")) +demuxSamples <- data.table::fread("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/1_demultiplex/DN/processedSamples.txt", data.table = FALSE, col.names = c("Sample")) +fast5Samples <- str_remove(fast5Samples$Sample,".fastq.gz") +setdiff(demuxSamples$Sample, fast5Samples) +setdiff(fast5Samples,demuxSamples$Sample) From 984c526620786a7e6405b9857a42e241533e4315 Mon Sep 17 00:00:00 2001 From: sl693 Date: Fri, 23 Feb 2024 19:03:28 +0000 Subject: [PATCH 14/29] Add scripts to process ONT sorted nuclei data after demux to sqanti3 - collapsing with Iso-seq3 cupcake --- .../2_cutadapt_minimap2_tclean.sh | 43 ++++++++++++ .../3_pbalign_filter_DN.sh | 39 +++++++++++ .../3_pbalign_filter_NeuN.sh | 39 +++++++++++ .../4_merged_collapse.sh | 67 +++++++++++++++++++ D_sortedNuclei_Transcriptome/5_sqanti3.sh | 49 ++++++++++++++ .../rTg4510_snont.config | 47 +++++++++++-- 6 files changed, 280 insertions(+), 4 deletions(-) create mode 100644 D_sortedNuclei_Transcriptome/2_cutadapt_minimap2_tclean.sh create mode 100644 D_sortedNuclei_Transcriptome/3_pbalign_filter_DN.sh create mode 100644 D_sortedNuclei_Transcriptome/3_pbalign_filter_NeuN.sh create mode 100644 D_sortedNuclei_Transcriptome/4_merged_collapse.sh create mode 100644 D_sortedNuclei_Transcriptome/5_sqanti3.sh diff --git a/D_sortedNuclei_Transcriptome/2_cutadapt_minimap2_tclean.sh b/D_sortedNuclei_Transcriptome/2_cutadapt_minimap2_tclean.sh new file mode 100644 index 0000000..04ab69d --- /dev/null +++ b/D_sortedNuclei_Transcriptome/2_cutadapt_minimap2_tclean.sh @@ -0,0 +1,43 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=144:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --array=0-7%4 # 8 barcodes per flow cell +#SBATCH --output=Output/2log/2_cutadapt_minimap2_tclean-%A_%a.o +#SBATCH --error=Output/2log/2_cutadapt_minimap2_tclean-%A_%a.e + + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + +NeuNsample=${NEUN_SAMPLES_NAMES[${SLURM_ARRAY_TASK_ID}]} +DNsample=${DN_SAMPLES_NAMES[${SLURM_ARRAY_TASK_ID}]} + +##------------------------------------------------------------------------- + +# merge each sample into one fastq file +merge_fastq_across_samples ${NeuNsample} ${WKD_ROOT}/1_demultiplex/NeuN ${WKD_ROOT}/1b_demultiplex_merged/NeuN +merge_fastq_across_samples ${DNsample} ${WKD_ROOT}/1_demultiplex/DN ${WKD_ROOT}/1b_demultiplex_merged/DN + +# delinate polyA and polyT sequences, reverse complement polyT sequences, remove polyA from all sequences +post_porechop_run_cutadapt ${WKD_ROOT}/1b_demultiplex_merged/NeuN/${NeuNsample}_merged.fastq ${WKD_ROOT}/2_cutadapt_merge/NeuN +post_porechop_run_cutadapt ${WKD_ROOT}/1b_demultiplex_merged/DN/${DNsample}_merged.fastq ${WKD_ROOT}/2_cutadapt_merge/DN + +# map combined fasta to reference genome +run_minimap2 ${WKD_ROOT}/2_cutadapt_merge/NeuN/${NeuNsample}_merged_combined.fasta ${WKD_ROOT}/3_minimap/NeuN +run_minimap2 ${WKD_ROOT}/2_cutadapt_merge/DN/${DNsample}_merged_combined.fasta ${WKD_ROOT}/3_minimap/DN + +# run transcript clean on aligned reads +run_transcriptclean ${WKD_ROOT}/3_minimap/NeuN/${NeuNsample}_merged_combined_sorted.sam ${WKD_ROOT}/4_tclean/NeuN +run_transcriptclean ${WKD_ROOT}/3_minimap/DN/${DNsample}_merged_combined_sorted.sam ${WKD_ROOT}/4_tclean/DN \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/3_pbalign_filter_DN.sh b/D_sortedNuclei_Transcriptome/3_pbalign_filter_DN.sh new file mode 100644 index 0000000..06a12c8 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/3_pbalign_filter_DN.sh @@ -0,0 +1,39 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --array=0-7%4 # 8 barcodes per flow cell +#SBATCH --output=Output/3log/3_pbalign_filter_DN-%A_%a.o +#SBATCH --error=Output/3log/3_pbalign_filter_DN-%A_%a.e + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + +DNfa=($(find "${WKD_ROOT}/4_tclean/DN" -type f -name "*clean.fa")) +fasta=${DNfa[${SLURM_ARRAY_TASK_ID}]} +sample=$(basename ${fasta} | cut -d "_" -f 1) + + +##------------------------------------------------------------------------- + +# align +echo "Aligning ${sample}: ${fasta} ..." +echo "Output: ${WKD_ROOT}/5_cupcake/5_align/${sample}_DN_mapped.bam" +source activate isoseq3 +cd ${WKD_ROOT}/5_cupcake/5_align +pbmm2 align --preset ISOSEQ --sort ${GENOME_FASTA} ${fasta} ${sample}_DN_mapped.bam --log-level TRACE --log-file ${sample}_mapped.log + +# filter_alignment +# output = ${sample}_mapped.filtered.bam, ${sample}_mapped.filtered.sorted.bam +filter_alignment ${sample}_DN_mapped ${WKD_ROOT}/5_cupcake/5_align \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/3_pbalign_filter_NeuN.sh b/D_sortedNuclei_Transcriptome/3_pbalign_filter_NeuN.sh new file mode 100644 index 0000000..b0ae5fc --- /dev/null +++ b/D_sortedNuclei_Transcriptome/3_pbalign_filter_NeuN.sh @@ -0,0 +1,39 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=144:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --array=0-7%4 # 8 barcodes per flow cell +#SBATCH --output=Output/3log/3_pbalign_filter_NeuN-%A_%a.o +#SBATCH --error=Output/3log/3_pbalign_filter_NeuN-%A_%a.e + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + +NeuNfa=($(find "${WKD_ROOT}/4_tclean/NeuN" -type f -name "*clean.fa")) +fasta=${NeuNfa[${SLURM_ARRAY_TASK_ID}]} +sample=$(basename ${fasta} | cut -d "_" -f 1) + + +##------------------------------------------------------------------------- + +# align +echo "Aligning ${sample}: ${fasta} ..." +echo "Output: ${WKD_ROOT}/5_cupcake/5_align/${sample}_NeuN_mapped.bam" +source activate isoseq3 +cd ${WKD_ROOT}/5_cupcake/5_align +pbmm2 align --preset ISOSEQ --sort ${GENOME_FASTA} ${fasta} ${sample}_NeuN_mapped.bam --log-level TRACE --log-file ${sample}_mapped.log + +# filter_alignment +# output = ${sample}_mapped.filtered.bam, ${sample}_mapped.filtered.sorted.bam +filter_alignment ${sample}_NeuN_mapped ${WKD_ROOT}/5_cupcake/5_align \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/4_merged_collapse.sh b/D_sortedNuclei_Transcriptome/4_merged_collapse.sh new file mode 100644 index 0000000..909f41e --- /dev/null +++ b/D_sortedNuclei_Transcriptome/4_merged_collapse.sh @@ -0,0 +1,67 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=40:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mem=200G # specify bytes memory to reserve +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=4_merged_collapse.o +#SBATCH --error=4_merged_collapse.e + + +# 30minutes + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + +LOGEN_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen +export PATH=$PATH:${LOGEN_ROOT}/miscellaneous +export PATH=$PATH:${LOGEN_ROOT}/assist_ont_processing + +export dir=$WKD_ROOT/5_cupcake +export samplename=rTg4510SCN +mkdir -p ${dir}/5_align/combined ${dir}/6_collapse ${dir}/5_align/combined_fasta ${dir}/7_sqanti3 + + +##------------------------------------------------------------------------- + +source activate nanopore +replace_filenames_with_csv.py --copy --ext=filtered.bam -i=$WKD_ROOT/5_cupcake/5_align -f=$META_ROOT/rTg4510SCN_rename.csv -d=${dir}/5_align/combined &> ${dir}/5_align/combined/rTg4510SCN_copy.log +replace_filenames_with_csv.py --copy --ext=filtered.fa -i=$WKD_ROOT/5_cupcake/5_align -f=$META_ROOT/rTg4510SCN_rename.csv -d=${dir}/5_align/combined_fasta &> ${dir}/5_align/combined_fasta/rTg4510SCN_fa_copy.log + + +##------------------------------------------------------------------------- + +# merge alignment +echo "Collapsing..." +allfilteredmapped=($(ls ${dir}/5_align/combined/*filtered.bam)) +for i in ${allfilteredmapped[@]}; do echo $i; done +source activate nanopore +samtools merge -f ${dir}/6_collapse/${samplename}_mapped.filtered.sorted.bam ${allfilteredmapped[@]} + +# collapse +echo "Collapsing..." +echo "Output: ${dir}/6_collapse/${samplename}_collapsed.gff" +cd ${dir}/6_collapse +source activate isoseq3 +isoseq3 collapse ${dir}/6_collapse/${samplename}_mapped.filtered.sorted.bam ${samplename}_collapsed.gff \ + --min-aln-coverage 0.85 --min-aln-identity 0.95 --do-not-collapse-extra-5exons \ + --log-level TRACE --log-file ${samplename}_collapsed.log + +# demultiplex +source activate nanopore +adapt_cupcake_to_ont.py ${dir}/5_align/combined_fasta -o ${samplename} + +demux_cupcake_collapse.py \ + ${dir}/6_collapse/${samplename}_collapsed.read_stat.txt \ + ${dir}/5_align/combined_fasta/${samplename}_sample_id.csv\ + --dataset=ont \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/5_sqanti3.sh b/D_sortedNuclei_Transcriptome/5_sqanti3.sh new file mode 100644 index 0000000..ac6b773 --- /dev/null +++ b/D_sortedNuclei_Transcriptome/5_sqanti3.sh @@ -0,0 +1,49 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=10:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mem=200G # specify bytes memory to reserve +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=5_sqanti3.o +#SBATCH --error=5_sqanti3.e + + +# Batch2: realign with pbmm2 align and filter alignment + +##------------------------------------------------------------------------- + +# source config file and function script +module load Miniconda2/4.3.21 +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + +LOGEN_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen +export PATH=$PATH:${LOGEN_ROOT}/miscellaneous +export PATH=$PATH:${LOGEN_ROOT}/assist_ont_processing + +export dir=$WKD_ROOT/5_cupcake +export samplename=rTg4510SCN +mkdir -p ${dir}/5_align/combined ${dir}/6_collapse ${dir}/5_align/combined_fasta ${dir}/7_sqanti3 + + +##------------------------------------------------------------------------- + +# sqanti3 +echo "Running SQANTI3..." +source activate sqanti2_py3 +cd ${dir}/7_sqanti3 +python $SQANTI3_DIR/sqanti3_qc.py ${dir}/6_collapse/${samplename}_collapsed.gff \ +$GENOME_GTF $GENOME_FASTA -t 30 --CAGE_peak $CAGE_PEAK --polyA_motif_list $POLYA \ +--genename --isoAnnotLite --skipORF --report skip &> ${samplename}_sqanti_qc.log + +# sqanti3 filter +python $SQANTI3_DIR/sqanti3_filter.py rules ${samplename}_collapsed_classification.txt \ +--faa=${samplename}_collapsed_corrected.fasta \ +--gtf=${samplename}_collapsed_corrected.gtf \ +-j=${filteringJson} --skip_report &> ${samplename}_sqanti_filter.log \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/rTg4510_snont.config b/D_sortedNuclei_Transcriptome/rTg4510_snont.config index 3a9fb69..a295d6e 100644 --- a/D_sortedNuclei_Transcriptome/rTg4510_snont.config +++ b/D_sortedNuclei_Transcriptome/rTg4510_snont.config @@ -21,12 +21,16 @@ ## --------------------------- ## Output name and relevant info -export NAME=ONTTargeted +export NAME=ONTFANS ## Output root directory filepath (ensure path exists) +export SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome export rTg4510_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510 export WKD_ROOT=$rTg4510_ROOT/H_Sorted_Nuclei export rTG4510_SC=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510 +export LOGEN=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen +export META_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_metadata +export UTILS=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/0_utils ## --------------------------- @@ -42,11 +46,46 @@ export STAR_REFERENCE_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/r export RAW_ROOT_DIR=/lustre/projects/Research_Project-MRC190311/longReadSeq/ONTRNA/sorted_nuclei/RNA/mouse # NeuN export RAW_FASTQ_1=${RAW_ROOT_DIR}/NeuN/NeuN/20240207_1339_3D_PAU69826_5fdf4c14/fastq_pass -export RAW_FASTQ_2=${RAW_ROOT_DIR}/DN/20240207_1336_2C_PAU74161_a82a4529/fastq_pass +# DN +export RAW_FASTQ_2=${RAW_ROOT_DIR}/DN/20240207_1336_2C_PAU74161_a82a4529/fastq_pass +# For Demultiplexing Samples +NEUN_BARCODE_CONFIG=$SC_ROOT/NeuN_ONT_barcode.csv +NEUN_SAMPLES_NAMES=($(awk -F "\"*,\"*" '{print $1}' ${NEUN_BARCODE_CONFIG})) + +DN_BARCODE_CONFIG=$SC_ROOT/DN_ONT_barcode.csv +DN_SAMPLES_NAMES=($(awk -F "\"*,\"*" '{print $1}' ${DN_BARCODE_CONFIG})) + + +## --------------------------- +## Software +export SOFTDIR=/lustre/projects/Research_Project-MRC148213/lsl693/software + +export MINIONQC=${SOFTDIR}/minion_qc/MinIONQC.R +# to run Porechop, require gcc-version 4.9.1 or more; +# on Knight: git clone https://github.com/rrwick/Porechop.git; cd Porechop; make +# transfer whole Porechop folder from Knight to ISCA, and chmod +export PORECHOP=${SOFTDIR}/Porechop/porechop-runner.py +export TCLEAN=${SOFTDIR}/TranscriptClean/TranscriptClean.py +export SQANTI3_DIR=${SOFTDIR}/SQANTI3 +export CUPCAKE=${SOFTDIR}/cDNA_Cupcake +export PYTHONPATH=$PYTHONPATH:${CUPCAKE}/sequence +export PYTHONPATH=$PYTHONPATH:${CUPCAKE} +filteringJson=$UTILS/filter_default_reducecoverage.json + +## Software input files +# SQANTI3 input files +CAGE_PEAK=$SQANTI3_DIR/data/ref_TSS_annotation/mouse.refTSS_v3.1.mm10.bed +POLYA=$SQANTI3_DIR/data/polyA_motifs/mouse_and_human.polyA_motif.txt + + +SUBSETPOLYTAILS=$LOGEN/assist_ont_processing/subset_polyA_polyT.py + ## --------------------------- ## filepaths -cd ${WKD_ROOT}; mkdir -p 1_demultiplex 2_cutadapt_merge 3_minimap 4_tclean -cd ${WKD_ROOT}/1_demultiplex; mkdir -p NeuN DN \ No newline at end of file +cd ${WKD_ROOT}; mkdir -p 1_demultiplex 1b_demultiplex_merged 2_cutadapt_merge 3_minimap 4_tclean +for i in 1_demultiplex 1b_demultiplex_merged 2_cutadapt_merge 3_minimap 4_tclean; do + mkdir -p ${WKD_ROOT}/$i/NeuN ${WKD_ROOT}/$i/DN +done \ No newline at end of file From d68dcf31c2438612b1f0dcb41836aeaa8ee86300 Mon Sep 17 00:00:00 2001 From: sl693 Date: Fri, 23 Feb 2024 19:14:53 +0000 Subject: [PATCH 15/29] Modify figures for sorted nuclei and protein data Add functions ---- - add tabulateIF() - plot_boxplot_SCN() - BDR_plot() - plot_protein_general() - generalggTranPlots() - visaulise_ORFS() Main Figure ---- - Figure 2: Add GFAP sorted nuclei data, modified track - Figure 4: Add CE for Trem2, sorted nuclei data Supplementary Figure ---- Add proteogenomics output --- Paper_Figures/0_source_functions.R | 215 +++++++++++++++++++++++++++-- Paper_Figures/1_generate_stats.R | 14 ++ Paper_Figures/2_generate_suppFig.R | 18 +++ Paper_Figures/3_generate_mainFig.R | 57 +++++--- Paper_Figures/rTg4510_config.R | 84 +++++++++-- 5 files changed, 342 insertions(+), 46 deletions(-) diff --git a/Paper_Figures/0_source_functions.R b/Paper_Figures/0_source_functions.R index 124cfdc..03504a1 100644 --- a/Paper_Figures/0_source_functions.R +++ b/Paper_Figures/0_source_functions.R @@ -46,27 +46,24 @@ suppressMessages(library(forcats)) suppressMessages(library(extrafont)) suppressMessages(loadfonts()) suppressMessages(library(ggtranscript)) -suppressMessages(library(ggplot2)) -suppressMessages(library(rtracklayer)) suppressMessages(library(rtracklayer)) ## ----------Functions----------------- # load all the functions -LOGEN_ROOT = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen/" -source(paste0(LOGEN_ROOT, "aesthetics_basics_plots/pthemes.R")) -source(paste0(LOGEN_ROOT, "aesthetics_basics_plots/draw_venn.R")) -source(paste0(LOGEN_ROOT, "aesthetics_basics_plots/draw_density.R")) -source(paste0(LOGEN_ROOT, "transcriptome_stats/plot_basic_stats.R")) -source(paste0(LOGEN_ROOT,"longread_QC/plot_cupcake_collapse_sensitivty.R")) -source(paste0(LOGEN_ROOT, "compare_datasets/base_comparison.R")) -source(paste0(LOGEN_ROOT, "compare_datasets/whole_vs_targeted.R")) -source(paste0(LOGEN_ROOT, "differential_analysis/plot_transcript_level.R")) -source(paste0(LOGEN_ROOT, "differential_analysis/plot_usage.R")) -source(paste0(LOGEN_ROOT, "merge_characterise_dataset/run_ggtranscript.R")) -sapply(list.files(path = paste0(LOGEN_ROOT,"longread_QC"), pattern="*.R", full = T), source,.GlobalEnv) -sapply(list.files(path = paste0(LOGEN_ROOT,"target_gene_annotation"), pattern="*summarise*", full = T), source,.GlobalEnv) +source(paste0(LOGEN, "aesthetics_basics_plots/pthemes.R")) +source(paste0(LOGEN, "aesthetics_basics_plots/draw_venn.R")) +source(paste0(LOGEN, "aesthetics_basics_plots/draw_density.R")) +source(paste0(LOGEN, "transcriptome_stats/plot_basic_stats.R")) +source(paste0(LOGEN,"longread_QC/plot_cupcake_collapse_sensitivty.R")) +source(paste0(LOGEN, "compare_datasets/base_comparison.R")) +source(paste0(LOGEN, "compare_datasets/whole_vs_targeted.R")) +source(paste0(LOGEN, "differential_analysis/plot_transcript_level.R")) +source(paste0(LOGEN, "differential_analysis/plot_usage.R")) +source(paste0(LOGEN, "merge_characterise_dataset/run_ggtranscript.R")) +sapply(list.files(path = paste0(LOGEN,"longread_QC"), pattern="*.R", full = T), source,.GlobalEnv) +sapply(list.files(path = paste0(LOGEN,"target_gene_annotation"), pattern="*summarise*", full = T), source,.GlobalEnv) ## ----------Theme----------------- @@ -319,3 +316,191 @@ twovenndiagrams <- function(set1, set2, name1, name2){ return(p) } +tabulateIF <- function(classf, countcol){ + + Counts <- classf %>% select(isoform,contains(countcol)) + rownames(Counts) <- Counts$isoform + Counts <- Counts %>% select(-isoform) + + + # Calculate the mean of normalised expression across all the samples per isoform + meandf <- data.frame(meanvalues = apply(Counts,1,mean)) %>% + rownames_to_column("isoform") %>% + # annotate isoforms with associated_gene and structural category + left_join(., classf[,c("isoform","associated_gene","structural_category")], by = "isoform") + + # Group meandf by associated_gene and calculate the sum of mean values for each group + grouped <- aggregate(meandf$meanvalues, by=list(associated_gene=meandf$associated_gene), FUN=sum) + + # Calculate the proportion by merging back, and divide the meanvalues by the grouped values (x) + merged <- meandf %>% + left_join(grouped, by = "associated_gene") %>% + mutate(perc = meanvalues / x * 100) + return(merged) +} + + +plot_boxplot_SCN <- function(normCounts, iso, ageDiv = TRUE){ + + dat <- normCounts %>% filter(isoform %in% iso) %>% mutate(genotype = factor(genotype, levels = c("WT","TG"))) + + p <- ggplot(dat, aes(x = cell, y = TPM, colour = genotype)) + + geom_boxplot(outlier.shape = NA) + + geom_point(aes(group = genotype), size = 3, position = position_jitterdodge()) + + labs(x = "Nuclei population", y = "TPM") + mytheme + + scale_colour_manual(values = c(label_colour("WT"),label_colour("TG")), labels = c("WT","TG"), name = NULL) + + if(length(iso) >= 2){ + + p <- p + facet_grid(~isoform) + + theme(strip.background = element_blank(), panel.spacing = unit(2, "lines")) + + }else{ + p <- p + + if(isTRUE(ageDiv)){ + p <- p + + geom_point(aes(group = genotype), size = 3, position = position_jitterdodge()) + + facet_grid(~time, labeller = labeller(time = as_labeller(c("2m" = "2 months", "8m" = "8 months")))) + + theme(strip.background = element_blank(), panel.spacing = unit(2, "lines")) + } + } + + + return(p) + +} + + +BDR_plot <- function(norm_counts, iso = NULL, gene = NULL, sampleExclude = NULL, IF = NULL, Braak = FALSE){ + if(!is.null(iso) & is.null(IF) & is.null(gene)){ + print("Isoform") + print(iso) + dat <- norm_counts %>% filter(isoform == iso) + }else if(!is.null(gene)){ + dat <- norm_counts %>% filter(grepl(gene,isoform)) %>% + group_by(associated_gene, sample) %>% tally(normalised_counts, name = "normalised_counts") + }else if(!is.null(IF)){ + print("IF") + dat <- norm_counts %>% + map_if(is.numeric, ~./sum(.) * 100) %>% + as_data_frame() %>% + filter(isoform == iso ) %>% + reshape2::melt(variable.name = "sample", value.name = "normalised_counts") + }else{ + print("error") + } + + + dat <- dat %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) + + if(isFALSE(Braak)){ + dat <- dat %>% filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) + p <- ggplot(dat, aes(x = phenotype, y = normalised_counts)) + geom_boxplot() + theme_classic() + }else{ + p <- ggplot(dat, aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() + theme_classic() + } + + if(!is.null(IF) & isFALSE(Braak)){ + p <- p + labs(x = "Phenotype", y = "Isoform fraction (%)") + }else if(is.null(IF) & isTRUE(Braak)){ + p <- p + labs(x = "Braak Stage", y = "Normalized counts") + }else if(!is.null(IF) & !isFALSE(Braak)){ + p <- p + labs(x = "Braak Stage", y = "Isoform fraction (%)") + }else{ + p <- p + labs(x = "Phenotype", y = "Normalized counts") + } + + # stats + if(isFALSE(Braak)){ + sdat <- dat %>% filter(!sample %in% sampleExclude) %>% as.data.frame() + sdat <<- sdat + res <- t.test(normalised_counts ~ phenotype, data = sdat) + log2FC <- mean(log2(sdat[sdat$phenotype == "AD", "normalised_counts"] + 1e-10)) - + mean(log2(sdat[sdat$phenotype == "Control", "normalised_counts"] + 1e-10)) + + print(res) + print(log2FC) + } + + return(p) +} + +# pclassfile with columns: from refined proteogenomics pipeline +plot_protein_general <- function(pclassfile){ + + RNATranscript <- pclassfile %>% group_by(associated_gene) %>% dplyr::summarize(RNATranscript = n()) + RNAIsoform <- pclassfile %>% dplyr::select(corrected_acc, associated_gene) %>% dplyr::filter(!is.na(corrected_acc)) %>% distinct() %>% + group_by(associated_gene) %>% dplyr::summarize(RNAIsoform = n()) + NumTranscriptIsoform <- merge(RNATranscript, RNAIsoform, by = "associated_gene") + + UniqueORF <- pclassfile %>% filter(!is.na(corrected_acc)) %>% + filter(!isoform %in% pclassfile$corrected_acc) %>% + group_by(structural_category, subcategory) %>% tally() + + p1 <- ggplot(NumTranscriptIsoform, aes(x = RNAIsoform, y = RNATranscript, label = associated_gene)) + + geom_point() + geom_text_repel() + + geom_abline(intercept = 0, linetype = "dashed") + mytheme + + labs(x = "Number of RNA isoforms with unique CDS", y = "Number of RNA transcripts") + + + p2 <- ggplot(UniqueORF, aes(y = n, x = subcategory)) + geom_bar(stat = "identity") + + facet_grid(rows = vars(structural_category), scales = "free", space = "free") + + coord_flip() + + labs(y = "Number of RNA Isoforms with unique CDS", x = "Subcategory") + + mytheme + theme(strip.background = element_blank()) + + return(list(p1,p2)) +} + + +generalggTranPlots <- function(isolist, inputgtf, classfiles, gene, cpat = NULL, species = NULL){ + IsoDf <- data.frame( + Isoform = unlist(IsoDf <- isolist), + Category = rep(names(IsoDf), lengths(IsoDf)) + ) + IsoDf$colour <- c(rep(NA,length(IsoDf$Category[IsoDf$Category != "DTE"]))) + p <- ggTranPlots(inputgtf=inputgtf,classfiles=classfiles, + isoList = c(as.character(IsoDf$Isoform)), + selfDf = IsoDf, gene = gene, inputCpat = cpat, cpatSpecies = species) + return(p) +} + + +# visualisation of Trem2 transcripts with same ORF LR.Trem2.54 + +visualise_ORFs <- function(refgtf,tgtf, pgtf, tclassfiles, pclassfiles, gene, transcript = NULL, cpat = NULL, species = NULL){ + + refIDs <- unique(refgtf[refgtf$gene_name == gene & !is.na(refgtf$transcript_id), "transcript_id"]) + if(!is.null(transcript)){ + + pID <- pclassfiles %>% filter(corrected_acc == transcript) %>% .[["isoform"]] + datIDs <- list( + Reference = refIDs, + `RNA Transcript` = pclassfiles %>% filter(corrected_acc == transcript) %>% .[["isoform"]], + `RNA Isoform` = unique(pgtf %>% dplyr::filter(transcript %in% pID) %>% .[["gene_id"]]) + ) + + p <- generalggTranPlots(datIDs, tgtf, tclassfiles, gene, cpat, species) + }else{ + + tID <- unique(pclassfiles[pclassfiles$associated_gene == gene,"corrected_acc"]) + + tORFID <- unique(pgtf %>% dplyr::filter(transcript %in% tID) %>% .[["gene_id"]]) + transcriptIDs <- list(Reference = refIDs, `RNA Transcript` = tID) + proteinIDs <- list(Reference = refIDs,`RNA Isoform` = tORFID) + + pT <- generalggTranPlots(transcriptIDs, tgtf, tclassfiles, gene) + pP <- generalggTranPlots(proteinIDs, tgtf, tclassfiles, gene, cpat, species) + + p <- plot_grid(pT, pP, labels = c("i","ii")) + + } + + return(p) +} diff --git a/Paper_Figures/1_generate_stats.R b/Paper_Figures/1_generate_stats.R index 9bdccd6..c64f46a 100644 --- a/Paper_Figures/1_generate_stats.R +++ b/Paper_Figures/1_generate_stats.R @@ -405,3 +405,17 @@ table(rowSums(Apoe4Ex == "No" | Apoe4Ex == "FirstExon" | Apoe4Ex == "IR")) # Differential transcript usage TargetedDIU$ontDIUGeno$resultDIU %>% filter(Gene == "Apoe") + + +## ---------- Revision ----------------------------------------------------------------- + + +## ---------- Proteogenomics ---------- +message("Number of RNA Transcripts:", nrow(class.files$targ_filtered)) +message("Number of coding RNA isoforms:", length(unique(mouseProtein$t2p.collapse.refined$pb_acc))) +message("Number of coding RNA isoforms:", length(unique(mouseProtein$t2p.collapse.refined$corrected_acc))) +length(unique(class.files$ptarg_filtered$corrected_acc)) # -1 to not include "NA" + +table(class.files$protein$pr_splice_cat) +nrow(class.files$protein) +3496/nrow(class.files$protein) diff --git a/Paper_Figures/2_generate_suppFig.R b/Paper_Figures/2_generate_suppFig.R index e1ec1f8..97199c8 100644 --- a/Paper_Figures/2_generate_suppFig.R +++ b/Paper_Figures/2_generate_suppFig.R @@ -239,6 +239,17 @@ Cd33IRTrack <- ggTranPlots(gtf$targ_merged, class.files$targ_filtered, isoList = c(as.character(Cd33Iso$Isoform)), selfDf = Cd33Iso, gene = "Cd33") +## ---------- Revision ----------------------------------------------------------------- + + +## ---------- Proteogenomics ---------- + +pGeneralProtein <- plot_protein_general(class.files$ptarg_filtered) +pTrem2SameORF <- visualise_ORFs(refgtf=gtf$ref_target, tgtf=gtf$targ_merged,pgtf=gtf$ptarg_merged, + tclassfiles=class.files$targ_filtered, pclassfiles=class.files$ptarg_filtered,gene="Trem2", transcript="PB.20818.54", cpat=mouseProtein$cpat, species="mouse") + +pTrem2UniqueORF <- visualise_ORFs(refgtf=gtf$ref_target, tgtf=gtf$targ_merged,pgtf=gtf$ptarg_merged, + tclassfiles=class.files$targ_filtered, pclassfiles=class.files$ptarg_filtered,gene="Trem2",cpat=mouseProtein$cpat, species="mouse") ## ---------- Output ----------------- @@ -295,3 +306,10 @@ for(i in Targeted$Genes){ print(plot_grid(pIF$ontNorm[[i]][[2]],pIF$isoNorm[[i]][[2]],nrow = 1)) } dev.off() + +pdf(paste0(dirnames$targ_output,"/SuppProteomics.pdf"), width = 22, height = 13) +A <- plot_grid(pGeneralProtein[[1]], pGeneralProtein[[2]], pTrem2SameORF, ncol = 1, labels = c("A","B","C"), scale = 0.95, + rel_heights = c(0.3,0.45,0.35)) +B <- plot_grid(pTrem2UniqueORF, labels = c("D"), scale = 0.95) +plot_grid(A,B, rel_widths = c(0.35,0.65)) +dev.off() diff --git a/Paper_Figures/3_generate_mainFig.R b/Paper_Figures/3_generate_mainFig.R index 1e963c3..6d6258b 100644 --- a/Paper_Figures/3_generate_mainFig.R +++ b/Paper_Figures/3_generate_mainFig.R @@ -15,11 +15,11 @@ ## ---------- Source function and config files ----------------- -LOGEN_ROOT = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen/" -SC_ROOT = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/Paper_Figures/" +LOGEN_ = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" +SC_ROOT = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/Paper_Figures/" source(paste0(SC_ROOT, "0_source_functions.R")) source(paste0(SC_ROOT, "rTg4510_config.R")) -output_dir = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/01_figures_tables/Mouse_Isoseq/" +output_dir = "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/01_figures_tables/Mouse_Isoseq/" ## ---------- Figure 2: Gfap ---------- @@ -37,31 +37,34 @@ Gfap_p <- list( scale_colour_manual(values = c(label_colour("WT"),label_colour("TG")), labels = c("WT","TG")) + labs(title = "", subtitle = "Iso-Seq Gene Expression"), - tracks1 = ggTranPlots(gtf$glob_iso, class.files$glob_iso, - isoList = c("PB.2973.16","PB.2973.15","PB.2973.35","PB.2973.23","PB.2973.33","PB.2973.27"), - colours = c("#F8766D",wes_palette("Darjeeling2")[2],"#00BFC4","#7CAE00",wes_palette("GrandBudapest2")[2],wes_palette("Zissou1")[4]), - lines = c("#F8766D",wes_palette("Darjeeling2")[2],"#00BFC4","gray",wes_palette("GrandBudapest2")[2],wes_palette("Zissou1")[4]), - gene = "Gfap"), + tracks1 = ggTranPlots(inputgtf=gtf$glob_iso, classfiles=class.files$glob_iso, + isoList = c("Gfap-201","PB.2973.16","PB.2973.15","PB.2973.35","PB.2973.23","PB.2973.33","PB.2973.27"), + colours = c("black", wes_palette("Darjeeling2")[2],"#F8766D","#7CAE00", wes_palette("Zissou1")[4], wes_palette("GrandBudapest2")[2], "#00BFC4"), + lines = c("black", wes_palette("Darjeeling2")[2],"#F8766D","#7CAE00", wes_palette("Zissou1")[4], wes_palette("GrandBudapest2")[2], "#00BFC4"), + gene = "Gfap") + , # PB.2973.16 = red (#F8766D), PB.2973.15 = wes_palette("Darjeeling2")[2], PB.2973.35 = blue (#00BFC4) - IsoTransExp = plot_transexp_overtime("Gfap",GlobalDESeq$resTranAnno$lrt$norm_counts,show="toprank",rank=3,isoSpecific=c("PB.2973.16")) + + IsoTransExp = plot_transexp_overtime("Gfap",GlobalDESeq$resTranAnno$lrt$norm_counts,show="toprank",rank=3,isoSpecific=c("PB.2973.16"), setorder = c("CONTROL","CASE")) + scale_colour_manual(values = c("#00BFC4","#F8766D",wes_palette("Darjeeling2")[2])) + theme(legend.title=element_blank()) + theme(legend.position = c(0.2,0.8)) + labs(title = "", subtitle = "Iso-Seq Transcript Expression") + - facet_grid(cols = vars(group), labeller = labeller(group = as_labeller(c("CONTROL" = "WT", "CASE" = "TG")))), + facet_grid(cols = vars(group)), # PB.2973.16 = red - RNATransExp = plot_transexp_overtime("Gfap",GlobalDESeq$RresTranAnno$lrt$norm_counts,show="specific",isoSpecific=c("PB.2973.16")) + + RNATransExp = plot_transexp_overtime("Gfap",GlobalDESeq$RresTranAnno$lrt$norm_counts,show="specific",isoSpecific=c("PB.2973.16"), setorder = c("CONTROL","CASE")) + theme(legend.position = "None") + labs(title = "", subtitle = "RNA-Seq Transcript Expression"), # PB.2973.16 = red, PB.2973.23 = green (#7CAE00), PB.2973.33 = purple, PB.2973.27 = yellow - RNATransExpRanked = plot_transexp_overtime("Gfap",GlobalDESeq$RresTranAnno$lrt$norm_counts,show="toprank",rank=3,isoSpecific=c("PB.2973.16")) + + RNATransExpRanked = plot_transexp_overtime("Gfap",GlobalDESeq$RresTranAnno$lrt$norm_counts,show="toprank",rank=3,isoSpecific=c("PB.2973.16"), setorder = c("CONTROL","CASE")) + scale_colour_manual(values = c("#F8766D","#7CAE00",wes_palette("Zissou1")[4],wes_palette("GrandBudapest2")[2])) + theme(legend.position = c(0.2,0.75)) + theme(legend.title=element_blank()) + scale_y_continuous(labels = ks) + labs(title = "", subtitle = "RNA-Seq Transcript Expression", y = "Normalized counts (K)") + - facet_grid(cols = vars(group), labeller = labeller(group = as_labeller(c("CONTROL" = "WT", "CASE" = "TG")))) + facet_grid(cols = vars(group)), + + Sorted = plot_boxplot_SCN(Exp$targ_sorted_all,"PB.39126.482") + theme(legend.title=element_blank()) + labs(title = "", subtitle = "Gfap-201 ONT Transcript Expression") + theme(legend.position = c(0.15,0.8)) ) @@ -194,7 +197,8 @@ Trem2Iso <- data.frame( All = c("PB.20818.261"), A5A3 = setdiff(as.character(unique(Trem2A5A3$transcript_id)), as.character(unique(Trem2ES$transcript_id)))[7:12], ES = as.character(unique(Trem2ES$transcript_id)[1:5]), - `Novel Exons` = as.character(unique(Trem2NE$transcript_id)[1:5]), + NE = c("PB.20818.16","PB.20818.32"), + CE = paste0("PB.20818.", c("80","192","573","1074","493","362","1096")), DTE = c("PB.20818.54","PB.20818.55","PB.20818.62") )), Category = rep(names(Trem2Iso), lengths(Trem2Iso)) @@ -216,13 +220,16 @@ Trem2_p <- list( scale_colour_manual(values = c(label_colour("WT"),label_colour("TG")), labels = c("WT","TG"), name = "") + theme(legend.title=element_blank(), legend.justification = c(0, 1), legend.position = "top"), IF = plotIF("Trem2",ExpInput=Exp$targ_ont$normAll,pheno=phenotype$targeted_rTg4510_ont, - cfiles=class.files$targ_all,design="time_series",rank=3,majorIso=NULL,isoSpecific=c("PB.20818.54")), + cfiles=class.files$targ_all,design="time_series",rank=3,majorIso=NULL,isoSpecific=c("PB.20818.54","PB.20818.55","PB.20818.62")), tracks = ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, isoList = c(as.character(Trem2Iso$Isoform)), - selfDf = Trem2Iso, gene = "Trem2", inputPfam=Targeted$pfam) + selfDf = Trem2Iso, gene = "Trem2", inputPfam=Targeted$pfam), + + sorted1 = plot_boxplot_SCN(Exp$targ_sorted_all,iso=c("PB.95419.5","PB.95419.7"), ageDiv = FALSE) + labs(title = "", subtitle = "ONT Transcript Expression") + theme(legend.position = c(0.9,0.8)) ) -Trem2_p$IF[[1]] <- Trem2_p$IF[[1]] + labs(title = "") + theme(axis.text.x = element_text(angle = 0, hjust = 0.5, vjust = 0.5)) + guides(fill = FALSE) Trem2_p$IF[[2]] <- Trem2_p$IF[[2]] + labs(title = "") +Trem2_p$IF[[1]] <- Trem2_p$IF[[1]] + labs(title = "", y = "IF (%)") + theme(axis.text.x = element_text(angle = 0, hjust = 0.5, vjust = 0.5)) + guides(fill = FALSE) +Trem2_p$IF[[2]] <- Trem2_p$IF[[2]] + labs(title = "", y = "IF (%)") + guides(colour = FALSE) ## ---------- Figure 5: Bin1 --------- @@ -271,6 +278,7 @@ CluIso <- data.frame( ES = c("PB.14646.1019","PB.14646.4411","PB.14646.1094","PB.14646.4585","PB.14646.11450"), AP = paste0("PB.14646.",c("39554","39402","39345","38679","34808","38406","38351","34798","329","1380","134")), IR = c("PB.14646.4741","PB.14646.4624","PB.14646.1317","PB.14646.2515"), + CE = paste0("PB.14646.",c("6992")), DTE = c("PB.14646.139","PB.14646.39341","PB.14646.39352","PB.14646.35283") )), Category = rep(names(CluIso), lengths(CluIso)) @@ -376,8 +384,9 @@ Apoe_p$IF[[2]] <- Apoe_p$IF[[2]] + labs(title = "") pdf(paste0(output_dir,"/MainFigures2.pdf"), width = 10, height = 12) plot_grid( plot_grid(plotlist = Gfap_p[2:1], labels = c("A","B")), -plot_grid(Gfap_p$tracks1,labels=c("C")), -plot_grid(Gfap_p$IsoTransExp, Gfap_p$RNATransExpRanked, labels = c("D","E")), ncol = 1 +plot_grid(Gfap_p$tracks1,Gfap_p$IsoTransExp, labels=c("C","D")), +plot_grid(Gfap_p$RNATransExpRanked, Gfap_p$Sorted, labels = c("E","F")), +ncol = 1 ) dev.off() @@ -393,11 +402,13 @@ pdf(paste0(output_dir,"/MainFigures3b.pdf"), width = 15, height = 18) plot_grid(Diffa,Diffb, labels = c("A","B"),label_size = 20) dev.off() -pdf(paste0(output_dir,"/MainFigures4.pdf"), width = 18, height = 12) +pdf(paste0(output_dir,"/MainFigures4.pdf"), width = 18, height = 16) plot_grid(plot_grid( - plot_grid(Trem2_p$dendro,Trem2_p$pheat$gtable,nrow=1, rel_widths = c(0.5,0.5), labels = c("A","B")), - plot_grid(Trem2_p$ONTTransExp,Trem2_p$ONTGeneExp,nrow=1, rel_widths = c(0.55,0.45), labels = c("D","E")), - plot_grid(Trem2_p$IF[[1]],Trem2_p$IF[[2]],nrow=1, rel_widths = c(0.55,0.45),labels = c("F","G")), ncol = 1), + plot_grid(Trem2_p$dendro,Trem2_p$sorted,nrow=1, rel_widths = c(0.5,0.5), labels = c("A","B"), scale = 0.95), + plot_grid(Trem2_p$pheat$gtable,NULL,nrow=1, rel_widths = c(0.5,0.5), labels = c("D","E")), + plot_grid(Trem2_p$ONTTransExp,Trem2_p$ONTGeneExp,nrow=1, rel_widths = c(0.55,0.45), labels = c("F","G")), + plot_grid(Trem2_p$IF[[1]],Trem2_p$IF[[2]],nrow=1, rel_widths = c(0.55,0.45),labels = c("H","I")), ncol = 1, + rel_heights = c(0.25,0.3,0.25,0.25)), Trem2_p$tracks, ncol = 2, rel_widths = c(0.55,0.45), labels = c("","C") ) diff --git a/Paper_Figures/rTg4510_config.R b/Paper_Figures/rTg4510_config.R index 09bd94e..d6ba012 100644 --- a/Paper_Figures/rTg4510_config.R +++ b/Paper_Figures/rTg4510_config.R @@ -1,7 +1,7 @@ # Szi Kay Leung: sl693@exeter.ac.uk suppressMessages(library("data.table")) -LOGEN <- "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen" +LOGEN <- "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" source(paste0(LOGEN,"/transcriptome_stats/read_sq_classification.R")) source(paste0(LOGEN,"/target_gene_annotation/summarise_gene_stats.R")) source(paste0(LOGEN,"/compare_datasets/dataset_identifer.R")) @@ -23,7 +23,7 @@ targetedTG <- c("K18","K20","K24","L22","O18","O22","T20","Q20","S18","Q18","L18 ## --------------------------- # directory names -root_dir <- "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/" +root_dir <- "/lustre/projects/Research_Project-MRC148213/lsl693/" dirnames <- list( # global transcriptome (Iso-Seq, Iso-Seq + RNA-Seq) glob_metadata = paste0(root_dir, "rTg4510/0_metadata/A_isoseq_whole"), @@ -46,7 +46,13 @@ dirnames <- list( rna_aligned = paste0(root_dir,"rTg4510/C_RNASeq/2_aligned/All"), # miscellaneous - references = paste0(root_dir,"references/annotation") + references = paste0(root_dir,"references/annotation"), + + # sorted nuclei data + SCN_root = paste0(root_dir, "rTg4510/H_Sorted_Nuclei/"), + + # proteogeonomics + mprotein = paste0(root_dir, "rTg4510/G_Merged_Targeted/B_cupcake_pipeline/4_proteogenomics/") ) @@ -81,9 +87,13 @@ class.names.files <- list( glob_iso = paste0(dirnames$glob_root, "/2_post_isoseq3/9_sqanti3/WholeIsoSeq.collapsed_RulesFilter_result_classification.txt"), targ_all = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts.txt"), targ_filtered = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt"), - iso_match = paste0(dirnames$targ_iso_root, "/7b_matched_only/8d_sqanti3/MatchedMouse_RulesFilter_result_classification.txt")#, + iso_match = paste0(dirnames$targ_iso_root, "/7b_matched_only/8d_sqanti3/MatchedMouse_RulesFilter_result_classification.txt"), + targ_sorted = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_counts.txt"), + targ_sorted_all = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_counts.txt"), + ptarg_filtered = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt") + #targ_iso = paste0(dirnames$targ_iso_root, "/thesis_dump/DiffAnalysis_noRNASEQ/SQANTI3/AllMouseTargeted.collapsed_classification.filtered_lite_classification.txt"), - #targ_ont = paste0(dirnames$targ_ont_root, "/thesis_dump/TALON/All/Unfiltered/SQANTI3/ONTTargeted_unfiltered_talon_classification.txt") + #targ_ont = paste0(dirnames$targ_ont_root, "/thesis_dump/TALON/All/Unfiltered/SQANTI3/ONTTargeted_unfiltered_talon_classification.txt"), ) class.files <- lapply(class.names.files, function(x) SQANTI_class_preparation(x,"nstandard")) @@ -111,6 +121,21 @@ group_class.files.diff.targeted <- cbind(class.files$targ_filtered[,c("isoform", `colnames<-`(c("isoform","associated_gene","WTFL", "TGFL")) +### sorted nuclei data +class.files$targ_sorted <- class.files$targ_sorted %>% select(-`NeuN65 _mapped`) + +# differentiate NeuN vs DN specific isoforms +class.files$targ_sorted$NeuNSum <- class.files$targ_sorted %>% select(contains("NeuN")) %>% apply(., 1,sum) +class.files$targ_sorted$DNSum <- class.files$targ_sorted %>% select(contains("DN")) %>% apply(., 1,sum) +class.files$targ_sorted$dataset <- apply(class.files$targ_sorted,1, function(x) identify_dataset_by_counts(x[["NeuNSum"]], x[["DNSum"]], "NeuN","DN")) + +# calculate TPM +expression <- class.files$targ_sorted_all %>% select(contains("mapped")) +TPM <- expression %>% mutate_if(is.numeric, funs(./sum(.))) +colnames(TPM) <- paste0("TPM_", colnames(TPM)) +class.files$targ_sorted_all <- cbind(class.files$targ_sorted_all, TPM) +class.files$targ_sorted_all$totalReads <- class.files$targ_sorted_all %>% select(contains("mapped") & !contains("TPM")) %>% apply(., 1, sum) + # Expression rawExp <- list( targ_ont_all = class.files$targ_all %>% dplyr::select(associated_gene, contains("ONT")) %>% select(!contains("sum_FL")) @@ -121,7 +146,7 @@ cat("Input DESEQ2 results\n") GlobalDESeq <- list( resTranAnno = readRDS(file = paste0(dirnames$glob_output, "/IsoSeq_DESeq2TranscriptLevel.RDS")), resGeneAnno = readRDS(file = paste0(dirnames$glob_output, "/IsoSeq_DESeq2GeneLevel.RDS")), - #RresTranAnno = readRDS(file = paste0(dirnames$glob_output, "/RNASeqHybrid_DESeq2TranscriptLevel.RDS")), + RresTranAnno = readRDS(file = paste0(dirnames$glob_output, "/RNASeqHybrid_DESeq2TranscriptLevel.RDS")), RresGeneAnno = readRDS(file = paste0(dirnames$glob_output, "/RNASeqHybrid_DESeq2GeneLevel.RDS")), resGeneComparison = readRDS(file = paste0(dirnames$glob_output, "/Comparison_DESeq2GeneLevel.RDS")) ) @@ -177,6 +202,16 @@ Exp <- list( ) ) +Exp$targ_sorted_all <- class.files$targ_sorted_all %>% + select(contains("TPM"), "isoform", "associated_gene", "associated_transcript") %>% + reshape2::melt() %>% + mutate(sample = word(variable, c(2),sep = fixed("_"))) %>% + merge(RawCounts[,c("sample","genotype","age", "cell")], ., by = "sample") %>% + mutate(value = value * 1000000) %>% + filter(variable != "TPM_NeuN65 _mapped" ) +colnames(Exp$targ_sorted_all) <- c("sample","genotype","time","cell","isoform","associated_gene","associated_transcript","file","TPM") + + ## ---------- merged targeted results overview ----------------- Targeted <- list( @@ -232,14 +267,47 @@ rnaseq_results <- list( gtf <- list( glob_iso = rtracklayer::import(paste0(dirnames$glob_root,"/2_post_isoseq3/9_sqanti3/WholeIsoSeq.collapsed.filtered.gtf")), targ_merged = rtracklayer::import(paste0(dirnames$targ_root,"/3_sqanti3/all_iso_ont_collapsed.filtered_counts_filtered.gtf")), + ptarg_merged = rtracklayer::import(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont.gtf")), ref_target = rtracklayer::import(paste0(dirnames$references,"/gencode.M22.annotation.20Targets.gtf")) ) gtf <- lapply(gtf, function(x) as.data.frame(x)) -gtf$targ_merged <- rbind(gtf$targ_merged[,c("seqnames","strand","start","end","type","transcript_id","gene_id")] , - gtf$ref_target[,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) +gtfCols <- c("seqnames","strand","start","end","type","transcript_id","gene_id") +gtf$targ_merged <- rbind(gtf$targ_merged[,gtfCols], + gtf$ptarg_merged[,gtfCols], + gtf$ref_target[,gtfCols]) gtf$targ_merged <- gtf$targ_merged %>% mutate(co = paste0(seqnames,":",start,"-",end)) +gtf$ptarg_merged <- gtf$ptarg_merged %>% mutate(transcript = word(transcript_id,c(1),sep=fixed("_"))) + +refgtf <- list( + Gfap = as.data.frame(rtracklayer::import(paste0(dirnames$references,"/gencode.M22.annotation.Gfap.gtf"))) +) +refgtf <- lapply(refgtf, function(x) x %>% select(seqnames,strand,start,end,type,transcript_name,gene_id) %>% dplyr::rename(., "transcript_id" = "transcript_name")) +gtf$glob_iso <- rbind(gtf$glob_iso[,c("seqnames","strand","start","end","type","transcript_id","gene_id")], refgtf$Gfap) + + + +## -------------------------- SCN sorted data + + +mouseProtein = list( + cpat = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont.ORF_prob.best.tsv"), sep ="\t", header = T), + t2p.collapse = read.table(paste0(dirnames$mprotein,"6_refined_database/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T), + t2p.collapse.refined = read.table(paste0(dirnames$mprotein,"6_refined_database/all_iso_ont_orf_refined_collapsed.tsv")) +) + +humanProtein = list( + cpat = read.table(paste0(dirnames$protein,"5_calledOrfs/all_iso_ont_best_orf.tsv"), sep ="\t", header = T), + t2p.collapse = read.table(paste0(dirnames$protein,"6_refined_database/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T) +) + +annopResTran <- readRDS(paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) + +class.files$protein <- read.table(paste0(dirnames$mprotein,"7_classified_protein/all_iso_ont.sqanti_protein_classification.tsv"), sep = "\t", header = T) +nmd <- read.table(paste0(dirnames$mprotein, "7_classified_protein/all_iso_ont.classification_filtered.tsv"), sep = "\t", header = T) +idx <- match(nmd$pb,class.files$ptarg_filtered$base_acc) +nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.files$ptarg_filtered$corrected_acc[idx]), NA)) ## --------------------------- From 8c14ec2d4d2d004eb4fa63fa7da76895430b68bf Mon Sep 17 00:00:00 2001 From: sl693 Date: Fri, 23 Feb 2024 19:18:38 +0000 Subject: [PATCH 16/29] Rebuttal: process figures for BDR and QC sorted nuclei --- Reviews/3_BDROverlap.R | 196 ++++++++++++++--------------------------- Reviews/4_SCN.R | 29 ++++++ 2 files changed, 96 insertions(+), 129 deletions(-) create mode 100644 Reviews/4_SCN.R diff --git a/Reviews/3_BDROverlap.R b/Reviews/3_BDROverlap.R index 91a5bea..3607d50 100644 --- a/Reviews/3_BDROverlap.R +++ b/Reviews/3_BDROverlap.R @@ -1,53 +1,35 @@ library("ggplot2") LOGEN_ROOT = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" +LOGEN="/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" SC_ROOT = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/Paper_Figures/" source(paste0(SC_ROOT, "0_source_functions.R")) source(paste0(SC_ROOT, "rTg4510_config.R")) output_dir = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/01_figures_tables/Mouse_Isoseq/" +# note removed outliers in differential expression analysis BDR + + +## ---------- BDR input data ----------------- + BDRONTclass <- read.table("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/D_ONT/5_cupcake/7_sqanti3/ontBDR_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt", sep = "\t", as.is = T) BDRONT <- readRDS("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/01_figures_tables/Ont_DESeq2TranscriptLevel.RDS") -phenotype <- -plotIFAll(Exp=Exp$targ_ont$normAll %>% select(-associated_gene), - classf=class.files$targ_all, - pheno=phenotype$targeted_rTg4510_ont, - majorIso=row.names(TargetedDIU$ontDIUGeno$keptIso)) - +phenotype <- read.csv("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/0_metadata/B_ONT/Selected_ONTTargeted_BDR.csv", header = T) TargetGene <- toupper(c("Abca1","Sorl1","Mapt","Bin1","Tardbp","App","Abca7", "Ptk2b","Ank1","Fyn","Clu","Cd33","Fus","Picalm","Snca","Apoe","Trpa1","Rhbdf2","Trem2","Vgf")) -tabulateIF <- function(gene, classf, countcol, genespecific=NULL){ - - Counts <- classf %>% select(isoform,contains(countcol)) - rownames(Counts) <- Counts$isoform - Counts <- Counts %>% select(-isoform) - - - # Calculate the mean of normalised expression across all the samples per isoform - meandf <- data.frame(meanvalues = apply(Counts,1,mean)) %>% - rownames_to_column("isoform") %>% - # annotate isoforms with associated_gene and structural category - left_join(., classf[,c("isoform","associated_gene","structural_category")], by = "isoform") - - - # Group meandf by associated_gene and calculate the sum of mean values for each group - grouped <- aggregate(meandf$meanvalues, by=list(associated_gene=meandf$associated_gene), FUN=sum) - - # Calculate the proportion by merging back, and divide the meanvalues by the grouped values (x) - IF <- meandf %>% - left_join(grouped, by = "associated_gene") %>% - mutate(perc = meanvalues / x * 100) - - return(IF) - -} - -tabIFOut <- lapply(TargetGene, function(x) tabulateIF(x, BDRONTclass, "B2")) -names(tabIFOut) <- TargetGene -tabIFOut <- bind_rows(tabIFOut, .id = "associated_gene") -ggplot(tabIFOut, aes(x = associated_gene, y = "")) +bdrGtf <- as.data.frame(rtracklayer::import("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/D_ONT/5_cupcake/7_sqanti3/ontBDR_collapsed.filtered_counts_filtered.gtf")) +refGtf <- as.data.frame(rtracklayer::import("/lustre/projects/Research_Project-MRC148213/lsl693/references/human/TargetGenes.gencode.v40.annotation.gtf")) +gtf$humanMerged <- rbind(bdrGtf [,c("seqnames","strand","start","end","type","transcript_id","gene_id")], + refGtf [,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) + +BDRNormCountsTranscripts <- BDRONT$B2WaldBraak$norm_counts %>% filter(grepl("B2", sample)) +lBDRNormCountsTranscripts <- BDRONT$B2WaldBraak$norm_counts_all %>% filter(grepl("B2", sample)) %>% select(sample,isoform,normalised_counts) +lBDRNormCountsTranscripts <- tidyr::spread(lBDRNormCountsTranscripts, sample, normalised_counts) +## ---------- IF across BDR genes ----------------- + +merged <- tabulateIF(BDRONTclass, "B2") ggplot(merged, aes(x = associated_gene, y = as.numeric(perc), fill = forcats::fct_rev(structural_category))) + geom_bar(stat = "identity", color = "black", size = 0.2) + #scale_color_manual(values = rep(NA, length(unique(minorgrouped$gene)))) + @@ -58,108 +40,64 @@ ggplot(merged, aes(x = associated_gene, y = as.numeric(perc), fill = forcats::fc theme(legend.position = "None") -View(TREM2) +## ---------- Trem2 ----------------- -# human BDR dataset -# ENST00000373113.8 -phenotype <- read.csv("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/0_metadata/B_ONT/Selected_ONTTargeted_BDR.csv", header = T) -Trem2TranscriptBDR <- BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.81888.25") %>% filter(grepl("B2", sample)) %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype, by = "sample") %>% - filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% - mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% - mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) +pBdrTrem2 <- list( + trans = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso ="PB.81888.25", sampleExclude = "BBN00229416.1"), + gene = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso = NULL, gene ="PB.81888", sampleExclude = "BBN00229416.1"), + IF = BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.81888.25", IF = TRUE, Braak = TRUE), + track = ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("ENST00000373113.8","PB.81888.25"),simple=TRUE, colour = c("black","red")) +) +plot_grid(plotlist = pBdrTrem2, labels = c("A","B","C","D")) -t.test(normalised_counts ~ phenotype, data = Trem2TranscriptBDR %>% filter(sample != "BBN00229416.1")) -summary(lm(normalised_counts ~ phenotype, data = Trem2TranscriptBDR %>% filter(sample != "BBN00229416.1"))) -ggplot(Trem2TranscriptBDR, aes(x = phenotype, y = normalised_counts)) + geom_boxplot() +## ---------- Clu ----------------- -bdrGtf <- as.data.frame(rtracklayer::import("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/D_ONT/5_cupcake/7_sqanti3/ontBDR_collapsed.filtered_counts_filtered.gtf")) -refGtf <- as.data.frame(rtracklayer::import("/lustre/projects/Research_Project-MRC148213/lsl693/references/human/CLU.gencode.v40.annotation.gtf")) -gtf$humanMerged <- rbind(bdrGtf [,c("seqnames","strand","start","end","type","transcript_id","gene_id")], - refGtf [,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) - -ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.92671.402","PB.92671.1702","ENST00000316403.15"),simple=TRUE, colour = c("blue","red", "red")) - -CluTranscriptBDR <- BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.92671.402") %>% filter(grepl("B2", sample)) %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype, by = "sample") %>% - filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% - mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% - mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) -ggplot(CluTranscriptBDR, aes(x = phenotype, y = normalised_counts)) + geom_boxplot() - -BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.92671.402") %>% filter(grepl("B2", sample)) %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype, by = "sample") %>% - mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% - ggplot(., aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() +pBDRClu <- list( + trans1 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.92671.402", sampleExclude = NA), + trans2 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.92671.402", Braak = TRUE), + gene = BDR_plot(norm_counts=BDRNormCountsTranscripts, gene="PB.92671"), + IF = BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.92671.402", IF = TRUE, Braak = TRUE), + track = ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("ENST00000316403.15", "PB.92671.402"),simple=TRUE, colour = c("black","red")) +) +plot_grid(plot_grid(pBDRClu$trans1, pBDRClu$trans2, rel_widths = c(0.4,0.6), labels = c("i","ii")), + pBDRClu$gene, pBDRClu$IF, pBDRClu$track, labels = c("A","B","C","D"), scale = 0.9) CluNE <- paste0("PB.92671.",c("689","1693","3228","4691","3474","1988","1778","1875","1860","3549","4725")) -ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.92671.402",CluNE ),simple=TRUE, colour = c("blue",rep("red",12))) - CluAF <- paste0("PB.92671.",c("2479","26717")) -BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.92671.26717") %>% filter(grepl("B2", sample)) %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype, by = "sample") %>% - mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% - ggplot(., aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() +pBDRCluTracks <- list( + NE = ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.92671.402",CluNE ),simple=TRUE, colour = c("black",rep("red",12))), + ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.92671.402",CluAF),simple=TRUE, colour = c("black",rep("red",12))) +) +plot_grid(plotlist = pBDRCluTracks, nrow = 2, rel_heights = c(0.8,0.2), labels = c("A","B")) -BDRONTclass %>% select(isoform, contains("B2")) %>% - map_if(is.numeric, ~./sum(.) * 100) %>% - as_data_frame() %>% - filter(isoform == "PB.92671.402") %>% - reshape2::melt(variable.name = "sample", value.name = "perc") %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype[,c("sample","BraakTangle_numeric")], by = "sample") %>% - mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% - ggplot(., aes(x = as.factor(BraakTangle_numeric), y = perc)) + geom_boxplot() ## Bin1 -ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("PB.50706.8", "PB.50706.13"),simple=TRUE, colour = c("blue",rep("red",12))) -BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.50706.8") %>% filter(grepl("B2", sample)) %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype, by = "sample") %>% - mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% - ggplot(., aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() - -BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.50706.8") %>% filter(grepl("B2", sample)) %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype, by = "sample") %>% - filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% - mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) %>% - mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% - ggplot(., aes(x = phenotype, y = normalised_counts)) + geom_boxplot() - - -BDRONTclass %>% select(isoform, contains("B2")) %>% - map_if(is.numeric, ~./sum(.) * 100) %>% - as_data_frame() %>% - filter(isoform == "PB.50706.8") %>% - reshape2::melt(variable.name = "sample", value.name = "perc") %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype[,c("sample","BraakTangle_numeric")], by = "sample") %>% - mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% - ggplot(., aes(x = as.factor(BraakTangle_numeric), y = perc)) + geom_boxplot() - -dat <- BDRONTclass %>% select(isoform, contains("B2")) %>% - map_if(is.numeric, ~./sum(.) * 100) %>% - as_data_frame() %>% - filter(isoform == "PB.50706.8") %>% - reshape2::melt(variable.name = "sample", value.name = "perc") %>% - mutate(sample = str_remove(sample, "B2.")) %>% - left_join(., phenotype, by = "sample") %>% - filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% - mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) -ggplot(dat, aes(x = phenotype, y = perc)) + geom_boxplot() -dat <- dat %>% filter(perc < 2) -summary(lm(perc ~ phenotype, data = dat)) - -model = lm(perc ~ phenotype, data = dat, family = "binomial") -plot(model) - -BDRONTclass[BDRONTclass$isoform == "PB.50706.8",] -BDRONTclass[BDRONTclass$isoform == "PB.50706.13",] +pBDRBin1 <- list( + trans1 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.13") + labs(title = "PB.50706.13"), + trans2 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.13", Braak = TRUE) + labs(title = "PB.50706.13"), + trans3 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.8") + labs(title = "PB.50706.8"), + trans4 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.8", Braak = TRUE) + labs(title = "PB.50706.8"), + gene = BDR_plot(norm_counts=BDRNormCountsTranscripts, gene="PB.50706"), + IF1 = BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.50706.8", IF = TRUE, Braak = TRUE), + IF2 = BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.50706.8", IF = TRUE, Braak = FALSE), + track = ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("ENST00000316724.10","ENST00000409400.1","PB.50706.8", "PB.50706.13"),simple=TRUE, colour = c("black","black",rep("red",12))) +) + +pdf("Bin1.pdf", width = 10, height = 20) +plot_grid(plot_grid(pBDRBin1$trans1, pBDRBin1$trans2, rel_widths = c(0.4,0.6), labels = c("i","ii")), + plot_grid(pBDRBin1$trans3, pBDRBin1$trans4, rel_widths = c(0.4,0.6), labels = c("i","ii")), + pBDRBin1$gene, + plot_grid(pBDRBin1$IF1, pBDRBin1$IF2, labels = c("i","ii")), + pBDRBin1$track, labels = c("A","B","C","D"), scale = 0.9,ncol=1) +dev.off() + +BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.50706.8", IF = TRUE) + + +## Final +hAPOE = BDRONTclass[BDRONTclass$associated_gene == "APOE","isoform"] +APOE_p = ggTranPlots(inputgtf=gtf$humanMerged, classfiles=BDRONTclass, + isoList = hAPOE[hAPOE != "PB.45429.68"], gene = "APOE") diff --git a/Reviews/4_SCN.R b/Reviews/4_SCN.R new file mode 100644 index 0000000..ff95560 --- /dev/null +++ b/Reviews/4_SCN.R @@ -0,0 +1,29 @@ + +# plot the number of transcripts unique and common to DN and NeuN +p3 <- class.files$targ_sorted %>% group_by(associated_gene, dataset) %>% tally() %>% + ggplot(., aes(x = associated_gene, y = n, fill = dataset)) + geom_bar(stat = "identity", position = position_dodge()) + + labs(x = "Gene", y = "Number of isoforms") + + +NeuNrawCounts <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/2_cutadapt_merge/NeuN/read_numbers.txt") +DNrawCounts <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/2_cutadapt_merge/DN/read_numbers.txt") +libraryPrep <- read.csv("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_metadata/libraryPrepMolarity.csv") +phenotype <- read.csv("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_metadata/SCNPhenotype.csv") + +head(phenotype) +head(libraryPrep) + +libraryPrep <- merge(phenotype, libraryPrep, by = "tissue") +RawCounts <- rbind(NeuNrawCounts %>% mutate(cell = "NeuN"), DNrawCounts %>% mutate(cell = "DN")) %>% mutate(barcode = word(V1,c(1),sep=fixed("_"))) +RawCounts <- merge(RawCounts, libraryPrep, by = "barcode") %>% dplyr::rename("totalReads" = "V2") +library(scales) +p1 <- ggplot(RawCounts, aes(x = genotype, y = totalReads, colour = age)) + + geom_point(size = 3) + + scale_y_continuous(labels = label_comma()) + facet_grid(~cell) + + labs(x = "Genotype", y = "Total ONT raw reads") + +p2 <- ggplot(RawCounts, aes(y = totalReads, x = fmol, colour = cell)) + geom_point(size = 3) + + scale_y_continuous(labels = label_comma()) + + labs(x = "Amount in library preparation (fmol)", y = "Total ONT raw reads") + +plot_grid(plot_grid(p1,p2),p3, nrow = 2, labels = c("A","B","C")) From 654c6ef3fe2b57144d6374f03cfa694f0c07b129 Mon Sep 17 00:00:00 2001 From: sl693 Date: Tue, 27 Feb 2024 19:00:31 +0000 Subject: [PATCH 17/29] proteomics and BDR - Add stats for protein level data - correct plot for protein - Update Figure 4 with Mapt - Include cryptic exons for Figures - Main figure 8 currently in separate R script --- Paper_Figures/1_generate_stats.R | 44 ++++++++++++++++++++ Paper_Figures/2_generate_suppFig.R | 2 +- Paper_Figures/3_generate_mainFig.R | 65 +++++++++++++++++++++--------- Paper_Figures/rTg4510_config.R | 27 ++++++++++--- Reviews/2_proteogenomics.R | 21 +++++----- Reviews/3_BDROverlap.R | 61 ++++++++++++++++++++++++++-- Reviews/rTg4510_config.R | 31 +++++++++++++- 7 files changed, 212 insertions(+), 39 deletions(-) diff --git a/Paper_Figures/1_generate_stats.R b/Paper_Figures/1_generate_stats.R index c64f46a..ae64a70 100644 --- a/Paper_Figures/1_generate_stats.R +++ b/Paper_Figures/1_generate_stats.R @@ -411,6 +411,7 @@ TargetedDIU$ontDIUGeno$resultDIU %>% filter(Gene == "Apoe") ## ---------- Proteogenomics ---------- + message("Number of RNA Transcripts:", nrow(class.files$targ_filtered)) message("Number of coding RNA isoforms:", length(unique(mouseProtein$t2p.collapse.refined$pb_acc))) message("Number of coding RNA isoforms:", length(unique(mouseProtein$t2p.collapse.refined$corrected_acc))) @@ -419,3 +420,46 @@ length(unique(class.files$ptarg_filtered$corrected_acc)) # -1 to not include "NA table(class.files$protein$pr_splice_cat) nrow(class.files$protein) 3496/nrow(class.files$protein) + +length(unique(mouseProtein$cpat$seq_ID)) + +setdiff(class.files$targ_filtered$isoform, c(as.character(mouseProtein$noORF$V1),as.character(mouseProtein$cpat$seq_ID))) +setdiff(c(as.character(mouseProtein$noORF$V1),as.character(mouseProtein$cpat$seq_ID)),class.files$targ_filtered$isoform) + +message("Number of transcripts: ", length(class.files$targ_filtered$isoform)) +message("Number of transcripts with noORF: ", length(as.character(mouseProtein$noORF$V1))) +message("Number of transcripts with ORF: ", length(as.character(mouseProtein$cpat$seq_ID))) +Rank1 <- mouseProtein$mapped[mouseProtein$mapped$orf_rank == "1",] +message("Number of transcripts with ORF ranked 1 and has stop codons: ", length(unique(Rank1[Rank1$has_stop_codon == "True","transcript_id"]))) +message("Number of transcripts with ORF ranked 1 and has stop codons, and coding potential > 0: ", length(unique(mouseProtein$t2p.collapse.refined$pb_accs))) + +RefinedORF <- mouseProtein$cpat[mouseProtein$cpat$seq_ID %in% mouseProtein$t2p.collapse.refined$pb_accs,] +message("Number of transcripts with ORF ranked 1 and has stop codons, and coding potential > 0.44: ", nrow(RefinedORF[RefinedORF$Coding_prob > 0.44,])) + +RefinedORFCoding <- RefinedORF[RefinedORF$Coding_prob > 0.44,] +message("Number of transcripts with ORF ranked 1 and has stop codons, and coding potential > 0.44, collapsed: ", + length(unique(mouseProtein$t2p.collapse.refined[mouseProtein$t2p.collapse.refined$pb_accs %in% RefinedORFCoding$seq_ID,"corrected_acc"]))) + +GSselectedcollapsedID <- mouseProtein$t2p.collapse.refined[mouseProtein$t2p.collapse.refined$pb_accs %in% RefinedORFCoding$seq_ID,"base_acc"] +class.files$protein_filtered_final <- class.files$protein_filtered[class.files$protein_filtered$pb %in% GSselectedcollapsedID,] +message("Number of protein products after filtering: ", nrow(class.files$protein_filtered_final)) + +class.files$protein_filtered_final <- class.files$protein_filtered_final %>% mutate(ensemblID = word(tx_gene, c(1), sep = fixed("."))) %>% left_join(., ensemblID, by = "ensemblID") %>% dplyr::rename("associated_gene" = "gene_name") +class.files$protein_filtered_final <- merge(class.files$protein_filtered_final, distinct(mouseProtein$t2p.collapse.refined[,c("base_acc","corrected_acc")]), by.x = "pb", by.y = "base_acc") +write.table(class.files$protein_filtered_final, paste0(dirnames$mprotein, "/7_classified_protein/all_iso_ont.sqanti_protein_classification_finalised.tsv"), sep = "\t", quote=F) + +nrow(class.files$protein_filtered_final[class.files$protein_filtered_final$pr_splice_cat == "novel_not_in_catalog",])/nrow(class.files$protein_filtered_final) +nrow(class.files$protein_filtered_final[class.files$protein_filtered_final$pr_splice_cat == "novel_in_catalog",])/nrow(class.files$protein_filtered_final) + +# Trem +Trem2NovelIsoforms <- class.files$targ_filtered[class.files$targ_filtered$associated_gene == "Trem2" & class.files$targ_filtered$associated_transcript == "novel","isoform"] +message("Number of total protein:", nrow(class.files$protein_filtered_final[class.files$protein_filtered_final$associated_gene == "Trem2",])) +Trem2NovelProteinIsoforms <- class.files$protein_filtered_final[class.files$protein_filtered_final$corrected_acc %in% Trem2NovelIsoforms ,] +message("Number of novel protein isoforms:", nrow(Trem2NovelProteinIsoforms)) + +colapsedID <- length(setdiff(mouseProtein$t2p.collapse.refined$pb_accs, mouseProtein$t2p.collapse.refined$corrected_acc)) + +## ---------- sorted nuclei ---------- +dat <- Exp$targ_sorted_all[Exp$targ_sorted_all$isoform == "PB.39126.482",c("cell","TPM", "genotype", "time")] +res <- lm(TPM ~ cell + genotype + time, data = dat) +summary(res) diff --git a/Paper_Figures/2_generate_suppFig.R b/Paper_Figures/2_generate_suppFig.R index 97199c8..9ddf11b 100644 --- a/Paper_Figures/2_generate_suppFig.R +++ b/Paper_Figures/2_generate_suppFig.R @@ -244,7 +244,7 @@ Cd33IRTrack <- ggTranPlots(gtf$targ_merged, class.files$targ_filtered, ## ---------- Proteogenomics ---------- -pGeneralProtein <- plot_protein_general(class.files$ptarg_filtered) +pGeneralProtein <- plot_protein_general(class.files$ptarg_filtered, class.files$protein_filtered_final) pTrem2SameORF <- visualise_ORFs(refgtf=gtf$ref_target, tgtf=gtf$targ_merged,pgtf=gtf$ptarg_merged, tclassfiles=class.files$targ_filtered, pclassfiles=class.files$ptarg_filtered,gene="Trem2", transcript="PB.20818.54", cpat=mouseProtein$cpat, species="mouse") diff --git a/Paper_Figures/3_generate_mainFig.R b/Paper_Figures/3_generate_mainFig.R index 6d6258b..cbc0763 100644 --- a/Paper_Figures/3_generate_mainFig.R +++ b/Paper_Figures/3_generate_mainFig.R @@ -15,7 +15,7 @@ ## ---------- Source function and config files ----------------- -LOGEN_ = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" +LOGEN = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" SC_ROOT = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/Paper_Figures/" source(paste0(SC_ROOT, "0_source_functions.R")) source(paste0(SC_ROOT, "rTg4510_config.R")) @@ -111,10 +111,16 @@ for(num in 1:length(TargetedDESeq$ontResTranAnno$wald$anno_res$isoform)){ rank=0,isoSpecific=i,setorder=c("CONTROL","CASE"), classfiles=class.files$targ_filtered) + labs(x = "", y = "") } +OntTargetedDiff[[13]] <- plot_transexp_overtime("Mapt",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific", + rank=0,isoSpecific="PB.8675.37810",setorder=c("CONTROL","CASE"), + classfiles=class.files$targ_filtered) + labs(x = "", y = "") +OntTargetedDiff[[14]] <- plot_transexp_overtime("Mapt",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific", + rank=0,isoSpecific="PB.8675.41059",setorder=c("CONTROL","CASE"), + classfiles=class.files$targ_filtered) + labs(x = "", y = "") -RefIsoforms <- lapply(c("Clu","Fyn","Apoe","Trem2","Cd33","App"), function(x) unique(gtf$ref_target[gtf$ref_target$gene_name == x & !is.na(gtf$ref_target$transcript_id), "transcript_id"])) -names(RefIsoforms ) <- c("Clu","Fyn","Apoe","Trem2","Cd33","App") +RefIsoforms <- lapply(c("Clu","Fyn","Apoe","Trem2","Cd33","App","Mapt"), function(x) unique(gtf$ref_target[gtf$ref_target$gene_name == x & !is.na(gtf$ref_target$transcript_id), "transcript_id"])) +names(RefIsoforms ) <- c("Clu","Fyn","Apoe","Trem2","Cd33","App","Mapt") OntTargetedTracks <- list( Trem2 = ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, @@ -143,24 +149,44 @@ OntTargetedTracks <- list( colours = c(wes_palette("GrandBudapest2")[1],rep("#0C0C78",2)), lines = c(wes_palette("GrandBudapest2")[1],rep("#0C0C78",2)), gene = "Cd33", simple=TRUE), App = ggTranPlots(gtf$targ_merged,class.files$targ_filtered, isoList = c("PB.19309.7564",RefIsoforms$App[1]), - colours = c(wes_palette("GrandBudapest2")[2],rep("#0C0C78",2)), lines = c(wes_palette("GrandBudapest2")[2],rep("#0C0C78",2)), gene = "App", simple=TRUE) + colours = c(wes_palette("GrandBudapest2")[2],rep("#0C0C78",2)), lines = c(wes_palette("GrandBudapest2")[2],rep("#0C0C78",2)), gene = "App", simple=TRUE), + Mapt = ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c("PB.8675.37810","PB.8675.41059","ENSMUST00000106992.9","ENSMUST00000106993.9" ), + colours = c(wes_palette("Darjeeling2")[5],alpha(wes_palette("Darjeeling2")[5],0.3),rep("#0C0C78",2)), + lines = c(wes_palette("Darjeeling2")[5],alpha(wes_palette("Darjeeling2")[5],0.3),rep("#0C0C78",2)), + #lines = c(wes_palette("Rushmore1")[3],wes_palette("Royal2")[5],alpha(wes_palette("Rushmore1")[3],0.3),rep("#0C0C78",2)), + gene = "Mapt",simple=TRUE) ) OntTargetedDiffColours <- data.frame( - iso = c(TargetedDESeq$ontResTranAnno$wald$anno_res$isoform), - col = c(wes_palette("Darjeeling2")[2],wes_palette("Zissou1")[1],wes_palette("Cavalcanti1")[5],wes_palette("Royal1")[2],wes_palette("Darjeeling1")[5],wes_palette("Royal2")[5], - wes_palette("Darjeeling2")[4],wes_palette("Royal1")[4],wes_palette("GrandBudapest2")[1],wes_palette("GrandBudapest2")[2], - alpha(wes_palette("Royal1")[4],0.4),alpha(wes_palette("Royal1")[2],0.3)) - # col = c(wes_palette("Darjeeling2")[2],wes_palette("Zissou1")[1],wes_palette("Rushmore1")[3],wes_palette("Royal2")[5],wes_palette("Darjeeling1")[5],wes_palette("Chevalier1")[3], - #wes_palette("Darjeeling2")[4],wes_palette("Royal1")[4],wes_palette("GrandBudapest2")[1],wes_palette("GrandBudapest2")[2], - #alpha(wes_palette("Royal1")[4],0.4),alpha(wes_palette("Rushmore1")[3],0.3)) + iso = c( + TargetedDESeq$ontResTranAnno$wald$anno_res$isoform, + "PB.8675.37810", + "PB.8675.41059" + ), + col = c( + wes_palette("Darjeeling2")[2], + wes_palette("Zissou1")[1], + wes_palette("Cavalcanti1")[5], + wes_palette("Royal1")[2], + wes_palette("Darjeeling1")[5], + wes_palette("Royal2")[5], + wes_palette("Darjeeling2")[4], + wes_palette("Royal1")[4], + wes_palette("GrandBudapest2")[1], + wes_palette("GrandBudapest2")[2], + alpha(wes_palette("Royal1")[4], 0.4), + alpha(wes_palette("Royal1")[2], 0.3), + wes_palette("Darjeeling2")[5], + alpha(wes_palette("Darjeeling2")[5], 0.3) + ) ) for(i in 1:nrow(OntTargetedDiffColours)){ #OntTargetedDiff[[i]] = OntTargetedDiff[[i]] + theme(plot.title = element_text(colour = as.character(OntTargetedDiffColours$col[[i]]))) OntTargetedDiff[[i]] = OntTargetedDiff[[i]] + facet_grid(. ~ LRID_struc) + theme(strip.background = element_rect(fill=as.character(OntTargetedDiffColours$col[[i]]))) + labs(title = NULL, x=NULL, y=NULL,subtitle="") - if(i %in% c(1,2,3,4)){ + if(i %in% c(1,2,3,4,13)){ OntTargetedDiff[[i]] = OntTargetedDiff[[i]] + theme(strip.text = element_text(size=15, colour="white")) }else{ OntTargetedDiff[[i]] = OntTargetedDiff[[i]] + theme(strip.text = element_text(size=15, colour="black")) @@ -171,14 +197,14 @@ tag_ggplot_seq <- function(p, id){ p1 <- p + labs(tag = as.character(id)) + theme(text = element_text(size = 12)) return(p1) } -OntTargetedDiff <- lapply(seq_len(12), function(x) tag_ggplot_seq(OntTargetedDiff[[x]],x)) +OntTargetedDiff <- lapply(seq_len(14), function(x) tag_ggplot_seq(OntTargetedDiff[[x]],x)) Diffa <- arrangeGrob(grobs=lapply(OntTargetedDiff, function(p) p + guides(colour=FALSE)), ncol=2, bottom=textGrob("Age (months)", gp=gpar(fontsize=15)), left=textGrob("Normalized counts", gp=gpar(fontsize=15), rot=90), labels = c("a")) -Diffb <- plot_grid(plotlist = OntTargetedTracks,ncol=1,rel_heights = c(0.3,0.3,0.1,0.15,0.15,0.1)) +Diffb <- plot_grid(plotlist = OntTargetedTracks,ncol=1,rel_heights = c(0.3,0.3,0.1,0.15,0.15,0.1,0.25)) Diff <- plot_grid(Diffa,Diffb) plot_grid(Diff) @@ -225,7 +251,9 @@ Trem2_p <- list( isoList = c(as.character(Trem2Iso$Isoform)), selfDf = Trem2Iso, gene = "Trem2", inputPfam=Targeted$pfam), - sorted1 = plot_boxplot_SCN(Exp$targ_sorted_all,iso=c("PB.95419.5","PB.95419.7"), ageDiv = FALSE) + labs(title = "", subtitle = "ONT Transcript Expression") + theme(legend.position = c(0.9,0.8)) + sorted1 = plot_boxplot_SCN(Exp$targ_sorted_all,iso=c("PB.95419.5","PB.95419.7"), ageDiv = FALSE) + + labs(title = "", subtitle = "ONT Transcript Expression") + theme(legend.position = c(0.9,0.8)) + + facet_grid(~isoform, labeller = labeller(isoform = as_labeller(c("PB.95419.5" = "Trem2-201", "PB.95419.7" = "Trem2-202")))) ) Trem2_p$IF[[1]] <- Trem2_p$IF[[1]] + labs(title = "", y = "IF (%)") + theme(axis.text.x = element_text(angle = 0, hjust = 0.5, vjust = 0.5)) + guides(fill = FALSE) @@ -241,6 +269,7 @@ Bin1Iso <- data.frame( Reference = unique(gtf$ref_target[gtf$ref_target$gene_name == "Bin1" & !is.na(gtf$ref_target$transcript_id), "transcript_id"]), ES = c("PB.22007.100","PB.22007.1005","PB.22007.423","PB.22007.10118","PB.22007.10147","PB.22007.42921"), AP = paste0("PB.22007.", c(50820, 50175, 50143, 50079, 49307, 48852, 48704, 48337, 47598)), + CE = paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")), DTE = c("PB.22007.224","PB.22007.99") )), Category = rep(names(Bin1Iso), lengths(Bin1Iso)) @@ -304,7 +333,7 @@ Clu_p <- list( isoList = c(as.character(CluIso$Isoform)), selfDf = CluIso, gene = "Clu", inputPfam=Targeted$pfam) ) -Clu_p$IF[[1]] <- Clu_p$IF[[1]] + labs(title = "") + theme(axis.text.x = element_text(angle = 0, hjust = 0.5, vjust = 0.5)) + guides(fill = FALSE) +Clu_p$IF[[1]] <- Clu_p$IF[[1]] + labs(title = "") + theme(axis.text.x = element_text(angle = 0, hjust = 0.5, vjust = 0.5), legend.position = "None") Clu_p$IF[[2]] <- Clu_p$IF[[2]] + labs(title = "") @@ -398,7 +427,7 @@ plot_grid(plot_grid(Targeted_p$comp,Targeted_p$cumulative,Targeted_p$venn,nrow=1 nrow=4, rel_heights = c(0.225,0.225,0.4,0.15)) dev.off() -pdf(paste0(output_dir,"/MainFigures3b.pdf"), width = 15, height = 18) +pdf(paste0(output_dir,"/MainFigures3b.pdf"), width = 15, height = 20) plot_grid(Diffa,Diffb, labels = c("A","B"),label_size = 20) dev.off() @@ -426,7 +455,7 @@ pdf(paste0(output_dir,"/MainFigures6.pdf"), width = 18, height = 14) plot_grid(plot_grid( plot_grid(Bin1_p$dendro,Bin1_p$ES,ncol=1,labels = c("A","B"),rel_heights = c(0.5,0.5)), plot_grid(Bin1_p$ONTTransExp, Bin1_p$ONTGeneExp,rel_widths = c(0.55,0.45),labels = c("D","E")), - plot_grid(Bin1_p$IF[[1]], Bin1_p$IF[[2]],rel_widths = c(0.55,0.45),labels = c("F","G")), + plot_grid(Bin1_p$IF[[1]] + theme(legend.position = "None"), Bin1_p$IF[[2]],rel_widths = c(0.55,0.45),labels = c("F","G")), ncol = 1, rel_heights = c(0.45,0.275,0.275)), Bin1_p$tracks, ncol = 2, rel_widths = c(0.5,0.5), labels = c("","C") ) diff --git a/Paper_Figures/rTg4510_config.R b/Paper_Figures/rTg4510_config.R index d6ba012..c71d972 100644 --- a/Paper_Figures/rTg4510_config.R +++ b/Paper_Figures/rTg4510_config.R @@ -52,7 +52,9 @@ dirnames <- list( SCN_root = paste0(root_dir, "rTg4510/H_Sorted_Nuclei/"), # proteogeonomics - mprotein = paste0(root_dir, "rTg4510/G_Merged_Targeted/B_cupcake_pipeline/4_proteogenomics/") + mprotein = paste0(root_dir, "rTg4510/G_Merged_Targeted/B_cupcake_pipeline/4_proteogenomics/"), + + utils = paste0(root_dir, "scripts/rTg4510/0_utils/") ) @@ -80,6 +82,8 @@ phenotype$targeted_rTg4510_ont <- read.csv(paste0(dirnames$targ_ont_metadata, "/ phenotype$targeted_rTg4510_ont <- phenotype$targeted_rTg4510_ont %>% mutate(group = Phenotype, time = Age) %>% mutate(group = factor(group, levels = c("WT","TG"))) phenotype$targeted_rTg4510_ont <- phenotype$targeted_rTg4510_ont %>% mutate(sample = paste0("ONT_",sample),col = paste0(sample,"_",Phenotype)) +ensemblID <- read.csv(paste0(dirnames$utils,"ensemblGeneName.csv")) + ## --------------------------- # Final classification file @@ -90,12 +94,15 @@ class.names.files <- list( iso_match = paste0(dirnames$targ_iso_root, "/7b_matched_only/8d_sqanti3/MatchedMouse_RulesFilter_result_classification.txt"), targ_sorted = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_counts.txt"), targ_sorted_all = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_counts.txt"), - ptarg_filtered = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt") + ptarg_filtered = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"), #targ_iso = paste0(dirnames$targ_iso_root, "/thesis_dump/DiffAnalysis_noRNASEQ/SQANTI3/AllMouseTargeted.collapsed_classification.filtered_lite_classification.txt"), #targ_ont = paste0(dirnames$targ_ont_root, "/thesis_dump/TALON/All/Unfiltered/SQANTI3/ONTTargeted_unfiltered_talon_classification.txt"), ) class.files <- lapply(class.names.files, function(x) SQANTI_class_preparation(x,"nstandard")) +class.files$protein_filtered <- read.table(paste0(dirnames$mprotein, "/7_classified_protein/all_iso_ont.sqanti_protein_classification.tsv"), sep = "\t", as.is = T, header = T) +# file below generated from 1_generate_stats.R +class.files$protein_filtered_final <- read.table(paste0(dirnames$mprotein, "/7_classified_protein/all_iso_ont.sqanti_protein_classification_finalised.tsv")) # for downstream subsetting of the global transcriptome by WT and TG mice sample sub_class.files <- lapply(wholesamples, function(x) subset_class_by_sample(class.files$glob_iso,x)) @@ -177,8 +184,16 @@ TargetedMergedDESeq <- lapply(TargetedMergedDESeq, function(x) x %>% filter(!is. TargetedMergedDESeqSig <- lapply(TargetedMergedDESeq, function(x) x %>% filter(padj_ont < 0.05)) -## ---------- DIU results (EdgeR) ----------------- -TargetedDIU <- readRDS(file = paste0(dirnames$targ_output, "/resultsDIU.RDS")) +## ---------- sorted nuclei data ----------------- + +NeuNrawCounts <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/2_cutadapt_merge/NeuN/read_numbers.txt") +DNrawCounts <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/2_cutadapt_merge/DN/read_numbers.txt") +libraryPrep <- read.csv("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_metadata/libraryPrepMolarity.csv") +phenotype$sorted <- read.csv("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_metadata/SCNPhenotype.csv") +libraryPrep <- merge(phenotype$sorted, libraryPrep, by = "tissue") +RawCounts <- rbind(NeuNrawCounts %>% mutate(cell = "NeuN"), DNrawCounts %>% mutate(cell = "DN")) %>% mutate(barcode = word(V1,c(1),sep=fixed("_"))) +RawCounts <- merge(RawCounts, libraryPrep, by = "barcode") %>% dplyr::rename("totalReads" = "V2") + ## ---------- Expression ----------------- Exp <- list( @@ -288,11 +303,13 @@ gtf$glob_iso <- rbind(gtf$glob_iso[,c("seqnames","strand","start","end","type"," -## -------------------------- SCN sorted data +## -------------------------- protein ---------- mouseProtein = list( cpat = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont.ORF_prob.best.tsv"), sep ="\t", header = T), + mapped = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_orfs_mapped.tsv"), sep ="\t", header = T), + noORF = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont.no_ORF.txt"), sep ="\t", header = F), t2p.collapse = read.table(paste0(dirnames$mprotein,"6_refined_database/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T), t2p.collapse.refined = read.table(paste0(dirnames$mprotein,"6_refined_database/all_iso_ont_orf_refined_collapsed.tsv")) ) diff --git a/Reviews/2_proteogenomics.R b/Reviews/2_proteogenomics.R index b4e2cea..f1324d8 100644 --- a/Reviews/2_proteogenomics.R +++ b/Reviews/2_proteogenomics.R @@ -21,28 +21,27 @@ source("/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/Review ## ---------- process data from pipeline ----------------- ## data-wrangle orf_refined.tsv - # remove low quality ORF # filter to target genes # generate column of the number of transcripts collapsed by delimiting the pb_accs column # output: a table of the pb_accs, base_acc (the representative collapsed isoform selected by G.Shenkyman pipeline) and numtxCollapsed -protein$t2p.collapse <- protein$t2p.collapse %>% filter(!orf_calling_confidence == "Low Quality ORF") %>% +mouseProtein$t2p.collapse <- mouseProtein$t2p.collapse %>% filter(gene%in%TargetGene) %>% mutate(numtxCollapsed = count.fields(textConnection(as.character(pb_accs)), sep = "|")) -char <- strsplit(as.character(protein$t2p.collapse $pb_accs), '|', fixed = T) -t2p.collapse.dissected <- data.frame(pb_accs=unlist(char), base_acc=rep(protein$t2p.collapse$base_acc, sapply(char, FUN=length))) -protein$t2p.collapse <- merge(t2p.collapse.dissected,protein$t2p.collapse[,c("base_acc","numtxCollapsed")]) +char <- strsplit(as.character(mouseProtein$t2p.collapse $pb_accs), '|', fixed = T) +t2p.collapse.dissected <- data.frame(pb_accs=unlist(char), base_acc=rep(mouseProtein$t2p.collapse$base_acc, sapply(char, FUN=length))) +mouseProtein$t2p.collapse <- merge(t2p.collapse.dissected,mouseProtein$t2p.collapse[,c("base_acc","numtxCollapsed")]) ## re-determine representative colalsped isoform: using ONT abundance (sum across all samples) rather than arbitrary (G.Shenkyman pipeline) # take the ONT_sum read counts from the classification file # max = grouping by the base_acc (i.e. the previously selected isoform), select the rows with the maximum ONT FL reads # create an index to remap and create a "corrected_acc" column with the corresponding isoform that has the highest number of ONT FL reads -protein$t2p.collapse <- merge(protein$t2p.collapse,class.files$targ_filtered[,c("isoform","ONT_sum_FL")],by.x = "pb_accs", by.y = "isoform", all.x = TRUE) -max = protein$t2p.collapse %>% group_by(base_acc) %>% filter(ONT_sum_FL == max(ONT_sum_FL)) -idx <- match(protein$t2p.collapse$base_acc, max$base_acc) -protein$t2p.collapse = transform(protein$t2p.collapse, corrected_acc = ifelse(!is.na(idx), as.character(max$pb_accs[idx]), base_acc)) +mouseProtein$t2p.collapse <- merge(mouseProtein$t2p.collapse,class.files$targ_filtered[,c("isoform","ONT_sum_FL")],by.x = "pb_accs", by.y = "isoform", all.x = TRUE) +max = mouseProtein$t2p.collapse %>% group_by(base_acc) %>% filter(ONT_sum_FL == max(ONT_sum_FL)) +idx <- match(mouseProtein$t2p.collapse$base_acc, max$base_acc) +mouseProtein$t2p.collapse = transform(mouseProtein$t2p.collapse, corrected_acc = ifelse(!is.na(idx), as.character(max$pb_accs[idx]), base_acc)) ## include in the original classification file the collapsed PB.ID -class.files$targ_filtered <- merge(class.files$targ_filtered, protein$t2p.collapse[,c("pb_accs","numtxCollapsed","base_acc","corrected_acc")], by.x = "isoform", by.y = "pb_accs", all.x = TRUE) +class.files$targ_filtered <- merge(class.files$targ_filtered, mouseProtein$t2p.collapse[,c("pb_accs","numtxCollapsed","base_acc","corrected_acc")], by.x = "isoform", by.y = "pb_accs", all.x = TRUE) ## Statistics message("Total number of RNA transcripts: ", nrow(class.files$targ_filtered)) @@ -87,5 +86,5 @@ annoResTran <- list( ## ---------- Output ----------------- write.table(class.files$targ_filtered, paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"),sep="\t",quote = F) -write.table(protein$t2p.collapse, paste0(dirnames$protein,"/all_iso_ont_orf_refined_collapsed.tsv"),sep="\t",quote = F) +write.table(mouseProtein$t2p.collapse, paste0(dirnames$mprotein,"/all_iso_ont_orf_refined_collapsed.tsv"),sep="\t",quote = F) saveRDS(annoResTran, file = paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) diff --git a/Reviews/3_BDROverlap.R b/Reviews/3_BDROverlap.R index 3607d50..39bd9b1 100644 --- a/Reviews/3_BDROverlap.R +++ b/Reviews/3_BDROverlap.R @@ -30,7 +30,7 @@ lBDRNormCountsTranscripts <- tidyr::spread(lBDRNormCountsTranscripts, sample, no ## ---------- IF across BDR genes ----------------- merged <- tabulateIF(BDRONTclass, "B2") -ggplot(merged, aes(x = associated_gene, y = as.numeric(perc), fill = forcats::fct_rev(structural_category))) + +BDRIF <- ggplot(merged, aes(x = associated_gene, y = as.numeric(perc), fill = forcats::fct_rev(structural_category))) + geom_bar(stat = "identity", color = "black", size = 0.2) + #scale_color_manual(values = rep(NA, length(unique(minorgrouped$gene)))) + labs(x = "Gene", y = "Isoform fraction (%)") + @@ -98,6 +98,61 @@ BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.50706.8", IF = TRUE) ## Final -hAPOE = BDRONTclass[BDRONTclass$associated_gene == "APOE","isoform"] +novelAPOE <- BDRONTclass[BDRONTclass$associated_gene == "APOE" & BDRONTclass$structural_category %in% c("NIC","NNC"),"isoform"] +APOEIso <- data.frame( + Isoform = unlist(APOEIso <- list( + Reference = c("ENST00000446996.5","ENST00000252486.9", "ENST00000434152.5", "ENST00000425718.1"), + `FSM ISM` = BDRONTclass[BDRONTclass$associated_gene == "APOE" & BDRONTclass$structural_category %in% c("FSM","ISM"),"isoform"], + `NIC NNC` = novelAPOE[novelAPOE != "PB.45429.68"] + )), + Category = rep(names(APOEIso), lengths(APOEIso)) +) +APOEIso$colour <- c(rep(NA,length(APOEIso$Category))) + + APOE_p = ggTranPlots(inputgtf=gtf$humanMerged, classfiles=BDRONTclass, - isoList = hAPOE[hAPOE != "PB.45429.68"], gene = "APOE") + isoList = c(as.character(APOEIso$Isoform)), selfDf = APOEIso, gene = "APOE") + + +CLUIso <- data.frame( + Isoform = unlist(CLUIso <- list( + Reference = c("ENST00000316403.15","ENST00000405140.7","ENST00000522238.1","ENST00000523500.5"), + `NE` = paste0("PB.92671.",c("689","1693","3228","3474","1988","1778","1860","3549","4725")), + `AF` = paste0("PB.92671.",c("2479","4691","1875","26717")) + )), + Category = rep(names(CLUIso), lengths(CLUIso)) +) +CLUIso$colour <- c(rep(NA,length(CLUIso$Category))) +CLU_p <- ggTranPlots(inputgtf=gtf$humanMerged, classfiles=BDRONTclass, + isoList = c(as.character(CLUIso$Isoform)), selfDf = CLUIso, gene = "CLU") + +Trem2countsA <- BDR_plot(norm_counts=BDRNormCountsTranscripts, iso ="PB.81888.25", sampleExclude = "BBN00229416.1") + + scale_fill_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") + + labs(title = "", subtitle = "ONT Transcript Expression") + +Trem2countsB <- BDR_plot(norm_counts=BDRNormCountsTranscripts, iso = NULL, gene ="PB.81888", sampleExclude = "BBN00229416.1") + + scale_fill_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") + + labs(title = "", subtitle = "ONT Gene Expression") + +BDRTrem2Iso <- data.frame( + Isoform = unlist(BDRTrem2Iso <- list( + `Mouse` = c("ENSMUST00000024791.14", "PB.20818.54"), + `Human` = c("ENST00000373113.8", "PB.81888.25") + )), + Category = rep(names(BDRTrem2Iso), lengths(BDRTrem2Iso)) +) +Trem2A <- ggTranPlots(inputgtf= gtf$targ_merged, classfiles=class.files$targ_filtered, + isoList = c(as.character(BDRTrem2Iso$Isoform)), selfDf = BDRTrem2Iso, gene = "Trem2", squish=FALSE) +TREM2B <- ggTranPlots(inputgtf= gtf$humanMerged, classfiles=BDRONTclass,isoList, + isoList = c(as.character(BDRTrem2Iso$Isoform)), selfDf = BDRTrem2Iso, gene = "TREM2", squish=FALSE) + +pdf(paste0(output_dir,"/MainFiguresBDR.pdf"), width = 15, height = 13) +left <- plot_grid(BDRIF + mytheme + theme(legend.position = "top"), + plot_grid(plot_grid(Trem2A,TREM2B, ncol = 1, labels = c("D",NULL)), + plot_grid(Trem2countsA,Trem2countsB, nrow=1, labels = c("E","F")), nrow = 2, rel_heights = c(0.4,0.6)), ncol = 1, labels = c("A")) +right <- plot_grid(APOE_p, CLU_p, labels = c("B","C"), ncol = 1, rel_heights = c(0.6,0.4)) +plot_grid(left, right, nrow = 1) +dev.off() + + + diff --git a/Reviews/rTg4510_config.R b/Reviews/rTg4510_config.R index 32801e9..6fa3170 100644 --- a/Reviews/rTg4510_config.R +++ b/Reviews/rTg4510_config.R @@ -36,12 +36,14 @@ dirnames <- list( targ_root = paste0(root_dir, "rTg4510/G_Merged_Targeted"), glob_output = paste0(root_dir, "rTg4510/01_figures_tables/Whole_Transcriptome"), targ_output = paste0(root_dir, "rTg4510/01_figures_tables/Targeted_Transcriptome"), + SCN_root = paste0(root_dir, "rTg4510/H_Sorted_Nuclei/"), # proteogeonomics protein = paste0(root_dir, "rTg4510/G_Merged_Targeted/4_proteogenomics/"), # reference references = paste0(root_dir,"references/annotation") + ) ## ------------- Phenotype files ------------------- @@ -53,15 +55,36 @@ phenotype <- list( ## --------------------------- +# merge counts for targ_sorted +#targ_sorted <- SQANTI_class_preparation(paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification.txt"),"nstandard") +#demux_targ_sorted <- fread(paste0(dirnames$SCN_root, "/5_cupcake/6_collapse/demux_fl_count.csv"), data.table = F) +#targ_sorted <- merge(targ_sorted, demux_targ_sorted, by.x = "isoform", by.y = "id", all.x = T) +#write.table(targ_sorted, paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_counts.txt"), row.names = F, sep = "\t", quote = F) +#targ_sorted <- targ_sorted %>% filter(associated_gene %in% TargetGene) +#write.table(targ_sorted, paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_counts.txt"), row.names = F, sep = "\t", quote = F) + # Final classification file class.names.files <- list( glob_iso = paste0(dirnames$glob_root, "/2_sqanti3/WholeIsoSeq.collapsed_RulesFilter_result_classification.txt"), targ_offtargets = paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.txt"), targ_all = paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts.txt"), - targ_filtered = paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt") + targ_filtered = paste0(dirnames$targ_root, "/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt"), + targ_sorted = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_counts.txt"), + targ_sorted_all = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_counts.txt") ) class.files <- lapply(class.names.files, function(x) SQANTI_class_preparation(x,"nstandard")) +class.files$targ_sorted <- class.files$targ_sorted %>% select(-`NeuN65 _mapped`) + +# differentiate NeuN vs DN specific isoforms +class.files$targ_sorted$NeuNSum <- class.files$targ_sorted %>% select(contains("NeuN")) %>% apply(., 1,sum) +class.files$targ_sorted$DNSum <- class.files$targ_sorted %>% select(contains("DN")) %>% apply(., 1,sum) +class.files$targ_sorted$dataset <- apply(class.files$targ_sorted,1, function(x) identify_dataset_by_counts(x[["NeuNSum"]], x[["DNSum"]], "NeuN","DN")) +# calculate TPM +expression <- class.files$targ_sorted_all %>% select(contains("mapped")) +TPM <- expression %>% mutate_if(is.numeric, funs(./sum(.))) +colnames(TPM) <- paste0("TPM_", colnames(TPM)) +class.files$targ_sorted_all <- cbind(class.files$targ_sorted_all, TPM) ## --------------------------- @@ -110,6 +133,12 @@ gtf$targ_merged <- rbind(gtf$targ_merged[,c("seqnames","strand","start","end","t gtf$ptarg_merged[,c("seqnames","strand","start","end","type","transcript_id","gene_id")], gtf$ref_target[,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) +refgtf <- list( + Gfap = as.data.frame(rtracklayer::import(paste0(dirnames$references,"/gencode.M22.annotation.Gfap.gtf"))) +) +refgtf <- lapply(refgtf, function(x) x %>% select(seqnames,strand,start,end,type,transcript_name,gene_id) %>% dplyr::rename(., "transcript_id" = "transcript_name")) +gtf$glob_iso <- rbind(gtf$glob_iso[,c("seqnames","strand","start","end","type","transcript_id","gene_id")], refgtf$Gfap) + ## -------- FICLE output ------------------- #Maptprotein <- unique(class.files$ptarg_filtered[class.files$ptarg_filtered$associated_gene == "Mapt","corrected_acc"]) From f7c669943fe2e5d1f54c6b9d58b2e2bd6a57f77c Mon Sep 17 00:00:00 2001 From: sl693 Date: Tue, 27 Feb 2024 19:01:21 +0000 Subject: [PATCH 18/29] Add drafted script for plotting expression of NMD, IR and CE transcripts --- Reviews/6_expressionSummed.R | 55 ++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 Reviews/6_expressionSummed.R diff --git a/Reviews/6_expressionSummed.R b/Reviews/6_expressionSummed.R new file mode 100644 index 0000000..b67d0ec --- /dev/null +++ b/Reviews/6_expressionSummed.R @@ -0,0 +1,55 @@ +plot_expression_summed <- function(TList, TName = NULL, AgeDiv = FALSE){ + + dat <- subset(Exp$targ_ont$normAll, row.names(Exp$targ_ont$normAll) %in% TList) %>% dplyr::select(-associated_gene) %>% + apply(.,2,sum) %>% + reshape2::melt(value.name = "sumReads") %>% + tibble::rownames_to_column(., var = "sample") %>% + mutate(sample = word(sample, c(2), sep = fixed("_"))) %>% + left_join(., phenotype$targ_ont, by = "sample") %>% + mutate(group = factor(ifelse(group == "CASE","TG","WT"), levels = c("WT","TG"))) + + + if(isFALSE(AgeDiv)){ + p <- ggplot(dat, aes(x = group, y = sumReads)) + geom_boxplot(outlier.shape = NA) + + geom_point(position=position_jitterdodge(jitter.width=2, dodge.width = 0), aes(colour = factor(time)), size = 3) + + mytheme + labs(x = "", y = "Normalized counts", subtitle = TName) + + scale_colour_manual(values = c("grey","azure4","black","red"), name = "Age (months)") + + theme(legend.position = "top") + }else{ + p <- ggplot(dat, aes(x = group, y = sumReads, colour = as.factor(time))) + geom_boxplot() + + mytheme + labs(x = "", y = "Normalized counts", subtitle = TName) + + scale_colour_manual(values = c("grey","azure4","black","red"), name = "Age (months)") + + theme(legend.position = "top") + } + + + return(p) +} + +plot_expression_summed(CE, "Cryptic exons", AgeDiv = TRUE) + +CE <- c(paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")), + "PB.40586.26305", + paste0("PB.14646.",c("6992")), + paste0("PB.38419.",c("3145")), + paste0("PB.20818.", c("80","192","573","1074","493","362","1096"))) +plot_expression_summed(CE) + +NMD <- lapply(TargetGene,function(x) class.files$protein_filtered_final[class.files$protein_filtered_final$is_nmd == "TRUE" & class.files$protein_filtered_final$associated_gene == x,"corrected_acc"]) +names(NMD) <- TargetGene + +NMDp <- lapply(NMD, function(x) plot_expression_summed(x, AgeDiv = TRUE)) +for(i in 1:length(TargetGene)){NMDp[[i]] <- NMDp[[i]] + labs(subtitle = TargetGene[[i]])} +NMDGenop <- lapply(NMD, function(x) plot_expression_summed(x, AgeDiv = FALSE)) +for(i in 1:length(TargetGene)){NMDGenop[[i]] <- NMDGenop[[i]] + labs(subtitle = TargetGene[[i]])} + +names(NMDp) <- TargetGene +plot_grid(plotlist = NMDp) +plot_grid(plotlist = NMDGenop) + + +IRList <- lapply(TargetGene,function(x) IR[IR$associated_gene == x,"transcript_id"]) +names(IRList) <- TargetGene +IRGenop <- lapply(IRList, function(x) plot_expression_summed(x, AgeDiv = FALSE)) +for(i in 1:length(TargetGene)){IRGenop[[i]] <- IRGenop[[i]] + labs(subtitle = TargetGene[[i]])} +plot_grid(plotlist = IRGenop) From e98b16d9086b6df0daa96130df70db08be34b47a Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 7 Mar 2024 11:41:43 +0000 Subject: [PATCH 19/29] Adding off-the-cuff scripts for review --- Reviews/10_SCNMerge.R | 88 +++++++++++++++++++++++++++++++++++++++++ Reviews/7_RNASeq.R | 29 ++++++++++++++ Reviews/8_Comparisons.R | 50 +++++++++++++++++++++++ Reviews/9_CE.R | 76 +++++++++++++++++++++++++++++++++++ 4 files changed, 243 insertions(+) create mode 100644 Reviews/10_SCNMerge.R create mode 100644 Reviews/7_RNASeq.R create mode 100644 Reviews/8_Comparisons.R create mode 100644 Reviews/9_CE.R diff --git a/Reviews/10_SCNMerge.R b/Reviews/10_SCNMerge.R new file mode 100644 index 0000000..9351758 --- /dev/null +++ b/Reviews/10_SCNMerge.R @@ -0,0 +1,88 @@ +read_stat <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged/merged_collapse.read_stat.txt", header = T) +sampleID <- read.csv("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged/original_fasta/merged_sample_id.csv") + +read_stat <- merge(read_stat, sampleID,by = "id") + +read_stat <- read_stat %>% mutate(dataset = ifelse(grepl("SCN",primer), "sorted","bulk")) +head(read_stat) +spread(read_stat, key = "pbid", value = "dataset") +bulk <- read_stat %>% filter(dataset == "bulk") +sorted <- read_stat %>% filter(dataset == "sorted") + +mergeAll <- merge(sorted, bulk, by = "pbid", all = T) %>% dplyr::select(pbid, id.x, id.y) +colnames(mergeAll) <- c("newcollapsed_isoform","sorted_isoform","bulk_isoform") + +identify_dataset_by_na <- function(col1,col2,name1,name2){ + + + if(!is.na(col1) & !is.na(col2)){return("Both") + }else if(is.na(col1) & !is.na(col2)){return(name2) + }else if(!is.na(col1) & is.na(col2)){return(name1) + }else{return("NA")} + +} + +mergeAll$dataset <- apply(mergeAll, 1, function(x) identify_dataset_by_na (x[["sorted_isoform"]], x[["bulk_isoform"]], "Sorted","Bulk")) + +mergeAll <- merge(class.files$targ_filtered[,c("isoform","associated_gene","associated_transcript","structural_category")], mergeAll, by.x = "isoform", by.y = "bulk_isoform", all = T) %>% mutate(sorted_reIsoform = ifelse(is.na(sorted_isoform),"PB", isoform)) +vennMerged <- twovenndiagrams(mergeAll[mergeAll$dataset %in% c("Bulk","Both"),"isoform"], mergeAll[mergeAll$dataset %in% c("Sorted","Both"),"sorted_reIsoform"],"Bulk","Sorted") +plot_grid(vennMerged) + +merge(class.files$targ_filtered, mergeAll[,c("isoform","dataset")], all.x = T, by = "isoform") %>% + group_by(associated_gene, structural_category, dataset) %>% + tally() %>% + ggplot(., aes(x = associated_gene, y = n, fill = structural_category)) + geom_bar(stat = "identity") + facet_grid(~dataset) + +class.files$targ_filtered %>% filter(isoform %in% mergeAll[mergeAll$dataset == "Bulk", ]) + + +## ----- 12 DTE +newCollasedID <- read_stat %>% filter(dataset == "bulk", id %in% TargetedDESeq$ontResTranAnno$wald$anno_res$isoform) %>% .[,c("pbid")] + +read_stat <- merge(read_stat %>% filter(pbid %in% newCollasedID), + TargetedDESeq$ontResTranAnno$wald$anno_res[,c("isoform","associated_transcript","associated_gene","pvalue")], by.x = "id", by.y = "isoform", all.x = T) + +merged <- merge(read_stat %>% filter(dataset == "bulk"), read_stat %>% filter(dataset == "sorted") %>% dplyr::select(id, pbid), by = "pbid", all = T) +colnames(merged) <- c("newcollapsed_isoform","bulk_isform","primer","dataset","associated_transcript","associated_gene","pvalue","sorted_isoform") +merged <- merged %>% dplyr::select(-dataset, -primer) %>% mutate(Detection = ifelse(is.na(sorted_isoform),"Bulk","Both")) +mergedBoth <- merged %>% filter(Detection == "Both") + +SortedDiffplots <- list() +for(i in 1:nrow(mergedBoth)){ + isoform <- mergedBoth$sorted_isoform[[i]] + gene <- class.files$targ_sorted[class.files$targ_sorted$isoform == isoform, "associated_gene"] + transcript <- class.files$targ_sorted[class.files$targ_sorted$isoform == isoform, "associated_transcript"] + print(isoform) + SortedDiffplots[[i]] <- plot_boxplot_SCN(Exp$targ_sorted_all, isoform, ageDiv = FALSE, genotypeDiv = FALSE) + + theme(legend.title=element_blank()) + labs(title = "", subtitle = paste0(gene,"\n", transcript)) + theme(legend.position = "None") +} +plot_grid(plotlist = SortedDiffplots) + + + +## ----- > 30 DTE by genotype + +newCollasedID <- read_stat %>% filter(dataset == "bulk", id %in% TargetedDESeq$ontResTranAnno$waldgenotype$anno_res$isoform[1:53]) %>% .[,c("pbid")] + +read_stat <- merge(read_stat %>% filter(pbid %in% newCollasedID), + TargetedDESeq$ontResTranAnno$wald$anno_res[,c("isoform","associated_transcript","associated_gene","pvalue")], by.x = "id", by.y = "isoform", all.x = T) + +merged <- merge(read_stat %>% filter(dataset == "bulk"), read_stat %>% filter(dataset == "sorted") %>% dplyr::select(id, pbid), by = "pbid", all = T) +colnames(merged) <- c("newcollapsed_isoform","bulk_isform","primer","dataset","associated_transcript","associated_gene","pvalue","sorted_isoform") +merged <- merged %>% dplyr::select(-dataset, -primer) %>% mutate(Detection = ifelse(is.na(sorted_isoform),"Bulk","Both")) +mergedBoth <- merged %>% filter(Detection == "Both") +nrow(mergedBoth) + +BSortedDiffplots <- list() +for(i in 1:nrow(mergedBoth)){ + isoform <- mergedBoth$sorted_isoform[[i]] + gene <- class.files$targ_sorted[class.files$targ_sorted$isoform == isoform, "associated_gene"] + transcript <- class.files$targ_sorted[class.files$targ_sorted$isoform == isoform, "associated_transcript"] + print(isoform) + BSortedDiffplots[[i]] <- plot_boxplot_SCN(Exp$targ_sorted_all, isoform, ageDiv = FALSE) + + theme(legend.title=element_blank()) + labs(title = "", subtitle = paste0(gene,"\n", transcript)) + theme(legend.position = "None") +} +plot_grid(plotlist = BSortedDiffplots) + + + diff --git a/Reviews/7_RNASeq.R b/Reviews/7_RNASeq.R new file mode 100644 index 0000000..fc6d188 --- /dev/null +++ b/Reviews/7_RNASeq.R @@ -0,0 +1,29 @@ +class.files$targ_qc %>% filter(isoform %in% class.files$targ_filtered$isoform) + +junc.files.targ_qc <- data.table::fread(paste0(dirnames$targ_root, "/3_sqanti3/reRunValidation/all_iso_ont_collapsed_junctions.txt"), header = T) + +class.files$targ_qc <- class.files$targ_qc %>% filter(isoform %in% class.files$targ_filtered$isoform) +table(class.files$targ_qc$RNASeq_supported) +table(class.files$targ_qc$within_50_cage) +table(class.files$targ_qc$RNASeq_supported) +table(class.files$targ_qc$polyA_motif_found) +table(class.files$targ_qc$within_polya_site) + +junc.files.targ_qc <- data.frame(junc.files.targ_qc %>% filter(isoform %in% class.files$targ_filtered$isoform)) + +nrow(junc.files.targ_qc[junc.files.targ_qc$total_coverage_unique >= 1 ,]) +nrow(junc.files.targ_qc) +table(junc.files.targ_qc[junc.files.targ_qc$total_coverage_unique == 0,"junction_category"]) +table(junc.files.targ_qc[junc.files.targ_qc$total_coverage_unique == 0,"splice_site"]) +table(junc.files.targ_qc[junc.files.targ_qc$total_coverage_unique == 0,"canonical"]) +length(unique(junc.files.targ_qc[junc.files.targ_qc$total_coverage_unique == 0,"isoform"])) + +length(unique(junc.files.targ_qc$isoform)) + + +CoveragePerIsoform <- junc.files.targ_qc %>% + dplyr::group_by(as.factor(isoform)) %>% + dplyr::summarise(sum_total_coverage_unique = sum(total_coverage_unique), median_total_coverage_unique = median(total_coverage_unique)) + +median(CoveragePerIsoform$sum_total_coverage_unique) +median(CoveragePerIsoform$median_total_coverage_unique) diff --git a/Reviews/8_Comparisons.R b/Reviews/8_Comparisons.R new file mode 100644 index 0000000..62c53e6 --- /dev/null +++ b/Reviews/8_Comparisons.R @@ -0,0 +1,50 @@ +refMap <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged/bulkSorted.rTg4510SCN_collapsed.filtered_targetgenes_filtered.gtf.refmap", header = T) +srefMap <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged/Sortedbulk.all_iso_ont_collapsed.filtered_counts_filtered.gtf.refmap", header = T) +sTMap <- read.table("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged/Sortedbulk.all_iso_ont_collapsed.filtered_counts_filtered.gtf.tmap", header = T) + +length(unique(refMap$ref_id)) +length(unique(srefMap$ref_id)) +table(sTMap$class_code) + + +class.files$targ_filtered[class.files$targ_filtered$associated_gene == "Trem2",] + +MatchedDiff <- sTMap[sTMap$qry_id %in% TargetedDESeq$ontResTranAnno$wald$anno_res$isoform,] +MatchedDiff <- merge(class.files$targ_sorted[,c("isoform","associated_transcript")], + MatchedDiff[,c("ref_id","qry_id")], by.x = "isoform", by.y = "ref_id") +colnames(MatchedDiff) <- c("SCN_isoform","SCN_associated_transcipt","bulk_isoform") + +MaxMatchedDiff <- class.files$targ_sorted[class.files$targ_sorted$associated_transcript %in% + MatchedDiff$SCN_associated_transcipt[!grepl("novel", MatchedDiff$SCN_associated_transcipt)],] %>% + mutate(AllSum = NeuNSum + DNSum) %>% + group_by(associated_transcript) %>% + top_n(1, AllSum) %>% as.data.frame() + +MatchedDiff <- merge(MatchedDiff, MaxMatchedDiff[,c("isoform","associated_transcript")], by.x = "SCN_associated_transcipt", by.y = "associated_transcript", all.x = T) + +SortedDiffplots <- list() +for(i in 1:nrow(MatchedDiff)){ + isoform <- MatchedDiff$isoform[[i]] + gene <- class.files$targ_sorted[class.files$targ_sorted$isoform == isoform, "associated_gene"] + transcript <- class.files$targ_sorted[class.files$targ_sorted$isoform == isoform, "associated_transcript"] + print(isoform) + SortedDiffplots[[i]] <- plot_boxplot_SCN(Exp$targ_sorted_all, isoform, ageDiv = FALSE) + + theme(legend.title=element_blank()) + labs(title = "", subtitle = paste0(gene,"\n", transcript)) + theme(legend.position = "None") +} + + +plot_boxplot_SCN(Exp$targ_sorted_all, "PB.90374.201") +plot_boxplot_SCN(Exp$targ_sorted_all, "PB.67362.11") +plot_boxplot_SCN(Exp$targ_sorted_all, "PB.67362.1063") +PB.90374.201 +PB.67362.11 +PB.67362.1063 + + +### human +library("biomaRt") +human <- useMart("ensembl", dataset = "hsapiens_gene_ensembl", host = "https://dec2021.archive.ensembl.org/") +mouse <- useMart("ensembl", dataset = "mmusculus_gene_ensembl", host = "https://dec2021.archive.ensembl.org/") + +getLDS("ensembl_transcript_id_version", "ensembl_transcript_id", "ENSMUST00000022616", mouse, "ensembl_transcript_id_version", martL = human) +getLDS("ensembl_transcript_id_version", "ensembl_transcript_id", "ENSMUST00000159265", mouse, "ensembl_transcript_id_version", martL = human) diff --git a/Reviews/9_CE.R b/Reviews/9_CE.R new file mode 100644 index 0000000..5b423b3 --- /dev/null +++ b/Reviews/9_CE.R @@ -0,0 +1,76 @@ +dirnames$protein <- paste0("/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/4_proteogenomics/") +protein = list( + cpat = read.table(paste0(dirnames$protein,"5_calledOrfs/all_iso_ont_best_orf.tsv"), sep ="\t", header = T), + t2p.collapse = read.table(paste0(dirnames$protein,"6_refined_database/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T) +) + +dirnames$protein <- paste0(dirnames$targ_root,"/4_proteogenomics/7_classified_protein/") + +class.files$protein <- read.table(paste0(dirnames$protein,"all_iso_ont.sqanti_protein_classification.tsv"), sep = "\t", header = T) +nmd <- read.table(paste0(dirnames$protein, "all_iso_ont.classification_filtered.tsv"), sep = "\t", header = T) +idx <- match(nmd$pb,class.files$ptarg_filtered$base_acc) +nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.files$ptarg_filtered$corrected_acc[idx]), NA)) + +## ---------- cryptic exons ----------------- + +InternalNovelExons <- lapply(FICLENE, function(x) x[x$classification == "Internal_NovelExon",]) +InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, + protein$cpat[,c("pb_acc","coding_score","orf_calling_confidence")], + by.x = "transcriptID", by.y = "pb_acc")) +InternalNovelExons <- lapply(InternalNovelExons, function(x) x %>% mutate(coding = ifelse(coding_score < 0.44, "noncoding","coding"))) +InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, + nmd[,c("pb","is_nmd","has_stop_codon")], + by.x = "transcriptID", by.y = "pb",all.x=TRUE)) + +plotCE <- function(gene, type){ + representative <- as.data.frame(gtf$ref_target %>% filter(type == "transcript" & transcript_type == "protein_coding") %>% group_by(gene_name) %>% top_n(1, width)) + allRep <- as.data.frame(gtf$ref_target) + # manual drop gene + print(gene) + df <- InternalNovelExons[[gene]] + if(gene == "Apoe"){ + # PB.40586.2026 = reference match ("PB.40586.2026") + df <- df[df$transcriptID %in% c("PB.40586.26305"),] + ref <-data.frame("PB.40586.2026",NA,NA,NA,NA,NA,"coding","False","True") + colnames(ref) <- colnames(df) + df <- rbind(df, ref) + }else if(gene == "Bin1"){ + df <- df[df$transcriptID %in% paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")),] + }else if(gene == "Clu"){ + df <- df[df$transcriptID %in% paste0("PB.14646.",c("6992")),] + # PB.40586.2026 = reference match ("PB.14646.139", "PB.14646.483") + ref <- data.frame("PB.14646.139",NA,NA,NA,NA,NA,"coding","False","True") + colnames(ref) <- colnames(df) + df <- rbind(df, ref) + }else if(gene == "Snca"){ + df <- df[df$transcriptID %in% paste0("PB.38419.",c("3145")),] + }else if(gene == "Trem2"){ + df <- df[df$transcript %in% paste0("PB.20818.", c("80","192","573","1074","493","362","1096")),] + }else{ + return(NULL) + } + transcriptList <- list( + #Reference = c("ENSMUST00000024791.14","ENSMUST00000113237.3"), + Reference = unique(allRep[allRep$gene_name == gene, "transcript_id"]), + #Reference = representative[ representative$gene_name == gene, "transcript_id"], + `not NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "False") %>% .[,c("transcriptID")])), + `NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "True") %>% .[,c("transcriptID")])), + `non-coding` = as.character(unique(df %>% filter(coding == "noncoding") %>% .[,c("transcriptID")])) + ) + proteinList <- list( + #Reference = unique(allRep[allRep$gene_name == gene, "transcript_id"]), + `not NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`not NMD`) %>% .[["gene_id"]]), + `NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`NMD`) %>% .[["gene_id"]]), + `non-coding` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`non-coding`) %>% .[["gene_id"]])) + + if(type == "transcript"){ + p <- generalggTranPlots(transcriptList, gtf$targ_merged, class.files$targ_filtered, gene) + }else if(type == "protein"){ + p <- generalggTranPlots(proteinList, gtf$targ_merged, class.files$targ_filtered, gene) + }else{ + bothList <- c(transcriptList, proteinList) + p <- generalggTranPlots(bothList, gtf$targ_merged, class.files$targ_filtered, gene) + } + + return(p) +} From c012f93ee80b88174677b884c40f79ef9c19b703 Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 7 Mar 2024 11:44:54 +0000 Subject: [PATCH 20/29] Rebuttal analysis - Grn & C9ork72 visualisation from whole transcriptome dataset - Correlation of AS events with genic features - Trem2 BDR stats add in - Supplementary BDR analayis for Bin1 & Clu - Mapt suppmentary figure of 3N/4N labelling --- Reviews/1_reviewAnalysis.R | 42 ++++++++++++++ Reviews/3_BDROverlap.R | 99 +++++++++++++++++++++++++++++++-- Reviews/3_post_proteogenomics.R | 37 ++++++------ Reviews/6_expressionSummed.R | 39 +------------ 4 files changed, 158 insertions(+), 59 deletions(-) diff --git a/Reviews/1_reviewAnalysis.R b/Reviews/1_reviewAnalysis.R index b95bb65..a192a3a 100644 --- a/Reviews/1_reviewAnalysis.R +++ b/Reviews/1_reviewAnalysis.R @@ -169,6 +169,42 @@ pCorrGeneONT <- corrNovelIsoformGeneExpression(class.files$targ_all, TargetedDES pCorrGeneIso <- corrNovelIsoformGeneExpression(class.files$targ_all, TargetedDESeq$isoResGeneAnno$wald$norm_counts,"Iso.Seq") +GRNIso <- class.files$glob_iso[class.files$glob_iso$associated_gene == "Grn","isoform"] +C9orfIso <- class.files$glob_iso[class.files$glob_iso$associated_gene == "C9orf72","isoform"] + + +ALS_Genes <- list( + GrnTracks = ggTranPlots(inputgtf=gtf$glob_iso, classfiles=class.files$glob_iso, + isoList = c(class.files$glob_iso[class.files$glob_iso$associated_gene == "Grn","isoform"]), + gene="Grn", codingTranscript=TRUE, simple = TRUE), + + GrnExp = plot_transexp_overtime("Grn",GlobalDESeq$resTranAnno$wald$norm_counts_all,show="specific", + isoSpecific=c(GRNIso),setorder=c("CONTROL","CASE")) + + labs(title = "", subtitle = "Iso-Seq Transcript Expression", y = "Normalized counts (K)") + scale_y_continuous(labels = ks)+ + theme(legend.title=element_blank(), legend.justification = c(0, 1), legend.position = "right"), + + C9orf72Tracks = ggTranPlots(inputgtf=gtf$glob_iso, classfiles=class.files$glob_iso, + isoList = c(class.files$glob_iso[class.files$glob_iso$associated_gene == "C9orf72","isoform"]), + gene="C9orf72", codingTranscript=TRUE, simple = TRUE), + + C9orf72Exp = plot_transexp_overtime("C9orf72",GlobalDESeq$resTranAnno$wald$norm_counts_all,show="specific", + isoSpecific=c(C9orfIso),setorder=c("CONTROL","CASE")) + + labs(title = "", subtitle = "Iso-Seq Transcript Expression", y = "Normalized counts (K)") + scale_y_continuous(labels = ks)+ + theme(legend.title=element_blank(), legend.justification = c(0, 1), legend.position = "right") + +) + + +## ---------- AS events correlation ---------- + +AS_correlation <- list( + A = corr_plot(totalNEvents,"meanGeneExp","n","Normalised mean gene expression","Total number of AS events", ""), + B = corr_plot(totalNEvents,"Maxexons","n","Number of exons (max)","Total number of AS events", ""), + #C = corr_plot(totalNEvents,"Maxexons","numberESEvents","Number of exons (max)","Total number of ES events", ""), + C = corr_plot(totalNEvents,"MaxGeneLength", "n","Gene Length (bp)","Total number of AS events", ""), + D = corr_plot(totalNEvents,"MaxTransLength","n","Transcript Length (bp)","Total number of AS events", "") +) +AScorrAll <- plot_grid(plotlist = AS_correlation, ncol = 2, labels = c("A","B","C","D","E")) ## --------------------------- output (pdf) @@ -182,3 +218,9 @@ plot_grid(plot_grid(pCorr3, NULL,rel_widths = c(0.6,0.4), labels = c("A","")), plot_grid(pCorr1,pCorr2, rel_widths = c(0.6,0.4), labels = c("B","C")), nrow = 2, scale = 0.95) dev.off() plot_grid(pCorrGeneONT, pCorrGeneIso, labels = c("A","B")) + +plot_grid(ALS_Genes$GrnTracks,ALS_Genes$GrnExp, ALS_Genes$C9orf72Tracks, ALS_Genes$C9orf72Exp, labels = c("A","C","B","D"), rel_heights = c(0.6,0.4)) + +pdf("ASCorrelation.pdf", width = 11, height = 11) +AScorrAll +dev.off() diff --git a/Reviews/3_BDROverlap.R b/Reviews/3_BDROverlap.R index 39bd9b1..16d182c 100644 --- a/Reviews/3_BDROverlap.R +++ b/Reviews/3_BDROverlap.R @@ -24,7 +24,7 @@ gtf$humanMerged <- rbind(bdrGtf [,c("seqnames","strand","start","end","type","tr refGtf [,c("seqnames","strand","start","end","type","transcript_id","gene_id")]) BDRNormCountsTranscripts <- BDRONT$B2WaldBraak$norm_counts %>% filter(grepl("B2", sample)) -lBDRNormCountsTranscripts <- BDRONT$B2WaldBraak$norm_counts_all %>% filter(grepl("B2", sample)) %>% select(sample,isoform,normalised_counts) +lBDRNormCountsTranscripts <- BDRONT$B2WaldBraak$norm_counts_all %>% dplyr::filter(grepl("B2", sample)) %>% dplyr::select(sample,isoform,normalised_counts) lBDRNormCountsTranscripts <- tidyr::spread(lBDRNormCountsTranscripts, sample, normalised_counts) ## ---------- IF across BDR genes ----------------- @@ -50,6 +50,15 @@ pBdrTrem2 <- list( ) plot_grid(plotlist = pBdrTrem2, labels = c("A","B","C","D")) +phenotype <- read.csv("/lustre/recovered/Research_Project-MRC148213/sl693/AD_BDR/0_metadata/B_ONT/Selected_ONTTargeted_BDR.csv", header = T) +Trem2TranscriptBDR <- BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.81888.25") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) +t.test(normalised_counts ~ phenotype, data = Trem2TranscriptBDR %>% filter(sample != "BBN00229416.1")) +summary(lm(normalised_counts ~ phenotype, data = Trem2TranscriptBDR %>% filter(sample != "BBN00229416.1"))) ## ---------- Clu ----------------- @@ -72,19 +81,40 @@ pBDRCluTracks <- list( ) plot_grid(plotlist = pBDRCluTracks, nrow = 2, rel_heights = c(0.8,0.2), labels = c("A","B")) +plot_grid(plot_grid(pBDRClu$trans1, pBDRClu$trans2), + plot_transexp_overtime("Clu",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",rank=NULL, + isoSpecific=c("PB.14646.139"), + setorder=c("CONTROL","CASE")), nrow = 2, labels = c("A","B")) + +CluTranscriptBDR <- BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.92671.402") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) +t.test(normalised_counts ~ phenotype, data = CluTranscriptBDR %>% filter(sample != "BBN00229416.1")) +summary(lm(normalised_counts ~ as.factor(BraakTangle_numeric), data = CluTranscriptBDR %>% filter(sample != "BBN00229416.1"))) ## Bin1 pBDRBin1 <- list( - trans1 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.13") + labs(title = "PB.50706.13"), - trans2 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.13", Braak = TRUE) + labs(title = "PB.50706.13"), - trans3 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.8") + labs(title = "PB.50706.8"), - trans4 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.8", Braak = TRUE) + labs(title = "PB.50706.8"), + trans1 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.13") + labs(title = "LR.BIN1.13"), + trans2 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.13", Braak = TRUE) + labs(title = "LR.BIN1.13"), + trans3 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.8") + labs(title = "LR.BIN1.8"), + trans4 = BDR_plot(norm_counts=BDRNormCountsTranscripts, iso="PB.50706.8", Braak = TRUE) + labs(title = "LR.BIN1.8"), gene = BDR_plot(norm_counts=BDRNormCountsTranscripts, gene="PB.50706"), IF1 = BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.50706.8", IF = TRUE, Braak = TRUE), IF2 = BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.50706.8", IF = TRUE, Braak = FALSE), track = ggTranPlots(gtf$humanMerged,BDRONTclass,isoList = c("ENST00000316724.10","ENST00000409400.1","PB.50706.8", "PB.50706.13"),simple=TRUE, colour = c("black","black",rep("red",12))) ) +Bin1TranscriptBDR <- BDRONT$B2WaldBraak$norm_counts %>% filter(isoform == "PB.50706.13") %>% filter(grepl("B2", sample)) %>% + mutate(sample = str_remove(sample, "B2.")) %>% + left_join(., phenotype, by = "sample") %>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) +t.test(normalised_counts ~ phenotype, data = Bin1TranscriptBDR %>% filter(sample != "BBN00229416.1")) +summary(lm(normalised_counts ~ as.factor(BraakTangle_numeric), data = Bin1TranscriptBDR %>% filter(sample != "BBN00229416.1"))) pdf("Bin1.pdf", width = 10, height = 20) plot_grid(plot_grid(pBDRBin1$trans1, pBDRBin1$trans2, rel_widths = c(0.4,0.6), labels = c("i","ii")), @@ -94,7 +124,19 @@ plot_grid(plot_grid(pBDRBin1$trans1, pBDRBin1$trans2, rel_widths = c(0.4,0.6), l pBDRBin1$track, labels = c("A","B","C","D"), scale = 0.9,ncol=1) dev.off() -BDR_plot(norm_counts=lBDRNormCountsTranscripts, iso="PB.50706.8", IF = TRUE) +plot_grid(plot_grid(pBDRBin1$trans1, pBDRBin1$trans2, rel_widths = c(0.4,0.6), labels = c("i","ii")), + plot_grid(pBDRBin1$trans3, pBDRBin1$trans4, rel_widths = c(0.4,0.6), labels = c("i","ii"))) + + +plot_grid(plot_grid(pBDRBin1$trans1, pBDRBin1$trans2), + plot_transexp_overtime("Bin1",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",rank=NULL, + isoSpecific=c("PB.22007.224"), + setorder=c("CONTROL","CASE")), nrow = 2, labels = c("A","B")) + +plot_grid(plot_grid(pBDRBin1$trans3, pBDRBin1$trans4), + plot_transexp_overtime("Bin1",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",rank=NULL, + isoSpecific=c("PB.22007.99"), + setorder=c("CONTROL","CASE")), nrow = 2, labels = c("A","B")) ## Final @@ -155,4 +197,49 @@ plot_grid(left, right, nrow = 1) dev.off() +## ---- Clu Finalised ----- +BDRCluIso <- data.frame( + Isoform = unlist(BDRCluIso <- list( + `Mouse` = c("ENSMUST00000022616.13", "PB.14646.139"), + `Human` = c("ENST00000316403.15", "PB.92671.402") + )), + Category = rep(names(BDRCluIso), lengths(BDRCluIso)) +) + +CluA <- ggTranPlots(inputgtf= gtf$targ_merged, classfiles=class.files$targ_filtered, + isoList = c(as.character(BDRCluIso$Isoform)), selfDf = BDRCluIso, gene = "Clu", squish=FALSE) +CluB <- ggTranPlots(inputgtf= gtf$humanMerged, classfiles=BDRONTclass,isoList, + isoList = c(as.character(BDRCluIso$Isoform)), selfDf = BDRCluIso, gene = "Clu", squish=FALSE) +CluTranscriptB <- pBDRClu$trans2 + scale_fill_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") +CluTranscriptA <- plot_transexp_overtime("Clu",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="toprank",rank=1,isoSpecific=c("PB.14646.139"),setorder=c("CONTROL","CASE")) + scale_colour_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") + labs(title = NULL) + +pdf("suppFigureBDRClu.pdf", width = 20, height = 10) +plot_grid(CluA,CluTranscriptA,CluB,CluTranscriptB, ncol = 2, labels = c("A","B","C","D")) +dev.off() + +## ----- Bin1 Finalised ----- +BDRBin1Iso <- data.frame( + Isoform = unlist(BDRBin1Iso <- list( + `Mouse` = c("ENSMUST00000234496.1","ENSMUST00000025239.8", "PB.22007.224","PB.22007.99"), + `Human` = c("ENST00000316724.10", "ENST00000409400.1","PB.50706.13","PB.50706.8") + )), + Category = rep(names(BDRBin1Iso), lengths(BDRBin1Iso)) +) + +Bin1A <- ggTranPlots(inputgtf= gtf$targ_merged, classfiles=class.files$targ_filtered, + isoList = c(as.character(BDRBin1Iso$Isoform)), selfDf = BDRBin1Iso, gene = "Bin1", squish=TRUE) +Bin1B <- ggTranPlots(inputgtf= gtf$humanMerged, classfiles=BDRONTclass,isoList, + isoList = c(as.character(BDRBin1Iso$Isoform)), selfDf = BDRBin1Iso, gene = "Bin1", squish=TRUE) +Bin1TranscriptB <- pBDRBin1$trans2 + scale_fill_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") +Bin1TranscriptA <- plot_transexp_overtime("Bin1",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",isoSpecific=c("PB.22007.99"),setorder=c("CONTROL","CASE")) + scale_colour_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") +Bin1TranscriptC <- pBDRBin1$trans4 + scale_fill_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") +Bin1TranscriptD <- plot_transexp_overtime("Bin1",TargetedDESeq$ontResTranAnno$wald$norm_counts,show="specific",isoSpecific=c("PB.22007.224"),setorder=c("CONTROL","CASE")) + scale_colour_manual(values = c(label_colour("WT"),label_colour("AD"))) + theme(legend.position = "None") + +pdf("suppFigureBDRBin1.pdf", width = 20, height = 10) +plot_grid(Bin1A,Bin1TranscriptD,Bin1TranscriptA,Bin1B,Bin1TranscriptC,Bin1TranscriptB, ncol = 3, labels = c("A","B","C","D","E","F"), + rel_widths = c(0.3,0.35,0.35)) +dev.off() + + + \ No newline at end of file diff --git a/Reviews/3_post_proteogenomics.R b/Reviews/3_post_proteogenomics.R index 10fdac8..7169b5a 100644 --- a/Reviews/3_post_proteogenomics.R +++ b/Reviews/3_post_proteogenomics.R @@ -7,6 +7,7 @@ ## -------------------------------- suppressMessages(library("cowplot")) +suppressMessages(library("ggh4x")) ## ---------- config file ----------------- @@ -95,7 +96,7 @@ class.files$targ_filtered_TGUnique <- class.files$targ_filtered[class.files$targ # FICLE Gencode_3, Gencode_4 = origianl exon 2, 3; Gencode_11,_12,_14,15 = original exons 9 - 12 # Yes = Exon skipped; No = Exon present and not skipped MaptRTranscripts <- list( - Ref = list(isoform = c("ENSMUST00000106992.9","ENSMUST00000100347.10")), + Ref = list(isoform = c("ENSMUST00000100347.10")), Mapt0N3R = MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No"), Mapt0N4R = MaptES %>% filter(Gencode_3 == "Yes" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "No" & Gencode_14 == "No" & Gencode_15 == "No"), Mapt1N3R = MaptES %>% filter(Gencode_3 == "No" & Gencode_4 == "Yes" & Gencode_11 == "No" & Gencode_12 == "Yes" & Gencode_14 == "No" & Gencode_15 == "No"), @@ -106,35 +107,35 @@ MaptRTranscripts <- list( MaptRTranscripts <- lapply(MaptRTranscripts, function(x) as.character(x[["isoform"]])) names(MaptRTranscripts) <- str_remove(names(MaptRTranscripts),"Mapt") # create a dataframe for downstream subsetting -MaptRTranscriptsdf <- do.call(rbind, MaptRTranscripts) %>% reshape2::melt() %>% select(Var1, value) %>% `colnames<-`(c("MaptType", "isoform")) %>% +MaptRTranscriptsdf <- do.call(rbind, MaptRTranscripts) %>% reshape2::melt() %>% dplyr::select(Var1, value) %>% `colnames<-`(c("MaptType", "isoform")) %>% mutate(R = ifelse(grepl("3R", MaptType), "3R","4R")) # ggtranscript of Mapt transcripts with highlights of N and R regions -pMaptRTranscripts <- generalggTranPlots(MaptRTranscripts, gtf$targ_merged, class.files$targ_filtered, "Mapt") + - annotate("rect", xmin = c(104286000, 104309000), xmax = c(104291000, 104325000), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) +pMaptRTranscripts <- generalggTranPlots(MaptRTranscripts, gtf$targ_merged, class.files$targ_filtered, "Mapt", squish = TRUE, pfam = Targeted$pfam) + + annotate("rect", xmin = c(1600, 3750), xmax = c(1980, 5850), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) # ggtranscript of Mapt transcripts with respective ORF MaptRProtein <- lapply(MaptRTranscripts, function(x) unique(gtf$ptarg_merged %>% filter(transcript %in% x,) %>% .[["gene_id"]])) -MaptRProtein$Ref <- c("ENSMUST00000106992.9","ENSMUST00000100347.10") -pMaptRProtein <- generalggTranPlots(MaptRProtein, gtf$targ_merged, class.files$targ_filtered, "Mapt", cpat = protein$cpat, species = "mouse") + - annotate("rect", xmin = c(104286000, 104309000), xmax = c(104291000, 104325000), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) +MaptRProtein$Ref <- c("ENSMUST00000100347.10") +pMaptRProtein <- generalggTranPlots(MaptRProtein, gtf$targ_merged, class.files$targ_filtered, "Mapt", cpat = mouseProtein$cpat, species = "mouse", squish = TRUE, pfam = Targeted$pfam) + annotate("rect", xmin = c(1600, 3750), xmax = c(1980, 5850), ymin = -Inf, ymax = Inf, alpha = .1, fill = c("green")) # expression of Mapt transcripts (ONT normalised counts) pMaptRTrascriptExp <- TargetedDESeq$ontResTranAnno$wald$norm_counts_all %>% merge(., MaptRTranscriptsdf, by = "isoform", all.y = TRUE) %>% filter(MaptType != "Reference") %>% + filter(!is.na(group)) %>% mutate(group = factor(ifelse(group == "CONTROL","WT","TG"), levels = c("WT","TG"))) %>% mutate(age = as.factor(time)) %>% mutate(MaptType = str_remove(MaptType,"Mapt")) %>% group_by(isoform, group, age, MaptType, R) %>% - summarise(meanCounts = mean(normalised_counts)) %>% + dplyr::summarise(meanCounts = mean(normalised_counts)) %>% ungroup() %>% ggplot(., aes(x = group, y = log10(meanCounts), colour = age)) + geom_boxplot() + geom_point(aes(fill = age), size = 1, shape = 21, position = position_jitterdodge()) + facet_nested(~R + MaptType, nest_line = element_line(linetype = 2)) + theme(strip.background = element_blank(), ggh4x.facet.nestline = element_line(colour = "grey")) + mytheme + - labs(x = "Genotype") + theme(legend.position = "top") + + labs(x = "Genotype", y = "Normalized counts") + theme(legend.position = "top") + scale_colour_manual(values = c("black","#CFCFCF","#777777","red"), name = "Age (months)") + scale_fill_manual(values = c("black","#CFCFCF","#777777","red"), name = "Age (months)") @@ -145,7 +146,7 @@ meanMaptExp <- function(normcounts, isoList){ mutate(normalised_counts = normalised_counts + 1) %>% # take the average of all the normalised counts of a subset of isoforms for each sample group_by(sample) %>% - summarise(meanCounts = mean(normalised_counts)) + dplyr::summarise(meanCounts = mean(normalised_counts)) return(dat) } @@ -155,14 +156,16 @@ dat <- merge(meanMaptExp(TargetedDESeq$ontResTranAnno$wald$norm_counts_all,MaptR mutate(Ratio = meanCounts.x/meanCounts.y) %>% mutate(sampleID = word(sample,c(2),sep=fixed("_"))) %>% merge(., phenotype$targ_ont, by.x = "sampleID", by.y = "sample") %>% mutate(group = factor(ifelse(group == "CONTROL","WT","TG"), levels = c("WT","TG"))) + +summary(lm(Ratio ~ group + time, dat)) # plot of ratio across age and genotype pMaptRTrascriptRatio1 <- ggplot(dat, aes(x = as.factor(time), y = Ratio, colour = group)) + geom_point() + mytheme + - labs(x = "Age (months)", y = "Ratio") + theme(legend.position = "right") + + labs(x = "Age (months)", y = "Ratio (4R:3R)") + theme(legend.position = "right") + scale_colour_manual(values = c(label_colour("WT"),"red"), name = "Genotype") + stat_summary(data=dat, aes(x=as.factor(time), y=Ratio, group=group), fun ="mean", geom="line", linetype = "dotted") # plot of ratio across genotype pMaptRTrascriptRatio2 <- ggplot(dat, aes(x = group, y = Ratio)) + geom_boxplot() + mytheme + - labs(x = "Genotype", y = "Ratio") + + labs(x = "Genotype", y = "Ratio (4R:3R)") + geom_point() @@ -255,9 +258,9 @@ plot_trem2("PB.20818.547") InternalNovelExons <- lapply(FICLENE, function(x) x[x$classification == "Internal_NovelExon",]) InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, - protein$cpat[,c("pb_acc","coding_score","orf_calling_confidence")], - by.x = "transcriptID", by.y = "pb_acc")) -InternalNovelExons <- lapply(InternalNovelExons, function(x) x %>% mutate(coding = ifelse(coding_score < 0.44, "noncoding","coding"))) + mouseProtein$cpat[,c("seq_ID","Coding_prob")], + by.x = "transcriptID", by.y = "seq_ID")) +InternalNovelExons <- lapply(InternalNovelExons, function(x) x %>% mutate(coding = ifelse(Coding_prob < 0.44, "noncoding","coding"))) InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, nmd[,c("pb","is_nmd","has_stop_codon")], by.x = "transcriptID", by.y = "pb",all.x=TRUE)) @@ -271,7 +274,7 @@ plotCE <- function(gene, type){ if(gene == "Apoe"){ # PB.40586.2026 = reference match ("PB.40586.2026") df <- df[df$transcriptID %in% c("PB.40586.26305"),] - ref <-data.frame("PB.40586.2026",NA,NA,NA,NA,NA,"coding","False","True") + ref <-data.frame("PB.40586.2026",NA,NA,NA,NA,"coding","False","True") colnames(ref) <- colnames(df) df <- rbind(df, ref) }else if(gene == "Bin1"){ @@ -279,7 +282,7 @@ plotCE <- function(gene, type){ }else if(gene == "Clu"){ df <- df[df$transcriptID %in% paste0("PB.14646.",c("6992")),] # PB.40586.2026 = reference match ("PB.14646.139", "PB.14646.483") - ref <- data.frame("PB.14646.139",NA,NA,NA,NA,NA,"coding","False","True") + ref <- data.frame("PB.14646.139",NA,NA,NA,NA,"coding","False","True") colnames(ref) <- colnames(df) df <- rbind(df, ref) }else if(gene == "Snca"){ diff --git a/Reviews/6_expressionSummed.R b/Reviews/6_expressionSummed.R index b67d0ec..61c0f6c 100644 --- a/Reviews/6_expressionSummed.R +++ b/Reviews/6_expressionSummed.R @@ -1,39 +1,6 @@ -plot_expression_summed <- function(TList, TName = NULL, AgeDiv = FALSE){ - - dat <- subset(Exp$targ_ont$normAll, row.names(Exp$targ_ont$normAll) %in% TList) %>% dplyr::select(-associated_gene) %>% - apply(.,2,sum) %>% - reshape2::melt(value.name = "sumReads") %>% - tibble::rownames_to_column(., var = "sample") %>% - mutate(sample = word(sample, c(2), sep = fixed("_"))) %>% - left_join(., phenotype$targ_ont, by = "sample") %>% - mutate(group = factor(ifelse(group == "CASE","TG","WT"), levels = c("WT","TG"))) - - - if(isFALSE(AgeDiv)){ - p <- ggplot(dat, aes(x = group, y = sumReads)) + geom_boxplot(outlier.shape = NA) + - geom_point(position=position_jitterdodge(jitter.width=2, dodge.width = 0), aes(colour = factor(time)), size = 3) + - mytheme + labs(x = "", y = "Normalized counts", subtitle = TName) + - scale_colour_manual(values = c("grey","azure4","black","red"), name = "Age (months)") + - theme(legend.position = "top") - }else{ - p <- ggplot(dat, aes(x = group, y = sumReads, colour = as.factor(time))) + geom_boxplot() + - mytheme + labs(x = "", y = "Normalized counts", subtitle = TName) + - scale_colour_manual(values = c("grey","azure4","black","red"), name = "Age (months)") + - theme(legend.position = "top") - } - - - return(p) -} - -plot_expression_summed(CE, "Cryptic exons", AgeDiv = TRUE) - -CE <- c(paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")), - "PB.40586.26305", - paste0("PB.14646.",c("6992")), - paste0("PB.38419.",c("3145")), - paste0("PB.20818.", c("80","192","573","1074","493","362","1096"))) -plot_expression_summed(CE) + + + NMD <- lapply(TargetGene,function(x) class.files$protein_filtered_final[class.files$protein_filtered_final$is_nmd == "TRUE" & class.files$protein_filtered_final$associated_gene == x,"corrected_acc"]) names(NMD) <- TargetGene From 4abefaa8c9f82d52e7b00ea03312f7a3ef42c499 Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 7 Mar 2024 11:47:27 +0000 Subject: [PATCH 21/29] Modify and add additional revised figures - Add plot_boxplot_SCN() - Add function to BDR_plot() - Correct output from plot_protein_general() - Correct naming output from visualise_ORFS() - Add plot_expression_summed() - Add visaulise_ORFS_NMD() --- Paper_Figures/0_source_functions.R | 158 ++++++++++++++++++++++++----- 1 file changed, 133 insertions(+), 25 deletions(-) diff --git a/Paper_Figures/0_source_functions.R b/Paper_Figures/0_source_functions.R index 03504a1..5b58a2e 100644 --- a/Paper_Figures/0_source_functions.R +++ b/Paper_Figures/0_source_functions.R @@ -75,7 +75,8 @@ label_colour <- function(genotype){ if(genotype == "mouse"){colour = wes_palette("Royal1")[4]}else{ if(genotype == "novel"){colour = wes_palette("Darjeeling1")[4]}else{ if(genotype == "known"){colour = wes_palette("Darjeeling1")[5]}else{ - }}}}}}} + if(genotype %in% c("AD")){colour = wes_palette("Royal1")[2]}else{ + }}}}}}}} return(colour) } @@ -206,7 +207,7 @@ draw_heatmap_gene <- function(gene, cf, normCounts, type){ # Subset the normalised expression count to gene, and datawrangle for plot dat = normCounts[normCounts$associated_gene == gene,c("isoform","normalised_counts","sample")] %>% mutate(log2normalised = log2(normalised_counts)) %>% - select(isoform, log2normalised, sample) %>% + dplyr::select(isoform, log2normalised, sample) %>% spread(., isoform, log2normalised) %>% tibble::column_to_rownames(var = "sample") # remove isoforms that have been removed by tappAS due to very low count @@ -340,9 +341,11 @@ tabulateIF <- function(classf, countcol){ } -plot_boxplot_SCN <- function(normCounts, iso, ageDiv = TRUE){ +plot_boxplot_SCN <- function(normCounts, iso, ageDiv = TRUE, genotypeDiv = TRUE){ - dat <- normCounts %>% filter(isoform %in% iso) %>% mutate(genotype = factor(genotype, levels = c("WT","TG"))) + dat <- normCounts %>% dplyr::filter(isoform %in% iso) %>% dplyr::mutate(genotype = factor(genotype, levels = c("WT","TG")), cell = factor(ifelse(cell == "DN", "NeuN-", "NeuN+"), levels = c("NeuN+","NeuN-"))) + + dat <<- dat p <- ggplot(dat, aes(x = cell, y = TPM, colour = genotype)) + geom_boxplot(outlier.shape = NA) + @@ -350,6 +353,19 @@ plot_boxplot_SCN <- function(normCounts, iso, ageDiv = TRUE){ labs(x = "Nuclei population", y = "TPM") + mytheme + scale_colour_manual(values = c(label_colour("WT"),label_colour("TG")), labels = c("WT","TG"), name = NULL) + print(summary(lm(TPM ~ cell + genotype + cell * genotype, data = dat))) + + plog2FC <- mean(log2(dat[dat$genotype == "TG", "TPM"] + 1e-10)) - + mean(log2(dat[dat$genotype == "WT", "TPM"] + 1e-10)) + + clog2FC <- mean(log2(dat[dat$cell == "NeuN-", "TPM"] + 1e-10)) - + mean(log2(dat[dat$cell == "NeuN+", "TPM"] + 1e-10)) + + message("log2FC for TG vs WT: ", plog2FC) + message("log2FC for NeuN- vs NeuN+: ", clog2FC) + + print(summary(lm(TPM ~ cell + genotype, data = dat))) + if(length(iso) >= 2){ p <- p + facet_grid(~isoform) + @@ -364,6 +380,14 @@ plot_boxplot_SCN <- function(normCounts, iso, ageDiv = TRUE){ facet_grid(~time, labeller = labeller(time = as_labeller(c("2m" = "2 months", "8m" = "8 months")))) + theme(strip.background = element_blank(), panel.spacing = unit(2, "lines")) } + + if(!isTRUE(ageDiv) & !isTRUE(genotypeDiv)){ + p <- ggplot(dat, aes(x = cell, y = TPM)) + + geom_boxplot(outlier.shape = NA) + + geom_point(size = 3) + + labs(x = "Nuclei population", y = "TPM") + mytheme + + } } @@ -395,15 +419,15 @@ BDR_plot <- function(norm_counts, iso = NULL, gene = NULL, sampleExclude = NULL, dat <- dat %>% mutate(sample = str_remove(sample, "B2.")) %>% left_join(., phenotype, by = "sample") %>% - mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric)) + mutate(BraakTangle_numeric = as.factor(BraakTangle_numeric))%>% + filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% + mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% + mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) if(isFALSE(Braak)){ - dat <- dat %>% filter(BraakTangle_numeric %in% c(0,1,2,5,6)) %>% - mutate(phenotype = ifelse(BraakTangle_numeric %in% c(0,1,2),"Control","AD")) %>% - mutate(phenotype = factor(phenotype, levels = c("Control","AD"))) - p <- ggplot(dat, aes(x = phenotype, y = normalised_counts)) + geom_boxplot() + theme_classic() + p <- ggplot(dat, aes(x = phenotype, y = normalised_counts, fill = phenotype)) + geom_boxplot() + mytheme }else{ - p <- ggplot(dat, aes(x = BraakTangle_numeric, y = normalised_counts)) + geom_boxplot() + theme_classic() + p <- ggplot(dat, aes(x = BraakTangle_numeric, y = normalised_counts, fill = phenotype)) + geom_boxplot() + mytheme } if(!is.null(IF) & isFALSE(Braak)){ @@ -425,49 +449,63 @@ BDR_plot <- function(norm_counts, iso = NULL, gene = NULL, sampleExclude = NULL, mean(log2(sdat[sdat$phenotype == "Control", "normalised_counts"] + 1e-10)) print(res) - print(log2FC) + message("Log2FC:", log2FC) } return(p) } # pclassfile with columns: from refined proteogenomics pipeline -plot_protein_general <- function(pclassfile){ +plot_protein_general <- function(tclassfile, pclassfile, correctedCollapsedID = NULL){ - RNATranscript <- pclassfile %>% group_by(associated_gene) %>% dplyr::summarize(RNATranscript = n()) + # count the number of transcripts in the transcript classification file + RNATranscript <- tclassfile %>% group_by(associated_gene) %>% dplyr::summarize(RNATranscript = n()) + + # count the number of transcripts in the protein classification file RNAIsoform <- pclassfile %>% dplyr::select(corrected_acc, associated_gene) %>% dplyr::filter(!is.na(corrected_acc)) %>% distinct() %>% group_by(associated_gene) %>% dplyr::summarize(RNAIsoform = n()) NumTranscriptIsoform <- merge(RNATranscript, RNAIsoform, by = "associated_gene") - UniqueORF <- pclassfile %>% filter(!is.na(corrected_acc)) %>% - filter(!isoform %in% pclassfile$corrected_acc) %>% - group_by(structural_category, subcategory) %>% tally() + if(is.null(correctedCollapsedID)){ + UniqueORF <- tclassfile %>% filter(!is.na(corrected_acc)) %>% + filter(!isoform %in% pclassfile$corrected_acc) %>% + group_by(structural_category, subcategory) %>% tally() + }else{ + print("Using corrected CollapsedID") + UniqueORF <- tclassfile %>% + filter(isoform %in% correctedCollapsedID) %>% + group_by(structural_category, subcategory) %>% tally() + } p1 <- ggplot(NumTranscriptIsoform, aes(x = RNAIsoform, y = RNATranscript, label = associated_gene)) + geom_point() + geom_text_repel() + geom_abline(intercept = 0, linetype = "dashed") + mytheme + - labs(x = "Number of RNA isoforms with unique CDS", y = "Number of RNA transcripts") + labs(x = "Number of protein isoforms", y = "Number of RNA transcripts") + cortest <- cor.test(NumTranscriptIsoform$RNAIsoform, NumTranscriptIsoform$RNATranscript) + print(cortest) p2 <- ggplot(UniqueORF, aes(y = n, x = subcategory)) + geom_bar(stat = "identity") + facet_grid(rows = vars(structural_category), scales = "free", space = "free") + coord_flip() + - labs(y = "Number of RNA Isoforms with unique CDS", x = "Subcategory") + + labs(y = "Number of redundant RNA transcripts", x = "Subcategory") + mytheme + theme(strip.background = element_blank()) return(list(p1,p2)) } -generalggTranPlots <- function(isolist, inputgtf, classfiles, gene, cpat = NULL, species = NULL){ +generalggTranPlots <- function(isolist, inputgtf, classfiles, gene, cpat = NULL, species = NULL, squish = FALSE, pfam = NULL){ IsoDf <- data.frame( Isoform = unlist(IsoDf <- isolist), Category = rep(names(IsoDf), lengths(IsoDf)) ) IsoDf$colour <- c(rep(NA,length(IsoDf$Category[IsoDf$Category != "DTE"]))) + IsoDf <<- IsoDf p <- ggTranPlots(inputgtf=inputgtf,classfiles=classfiles, isoList = c(as.character(IsoDf$Isoform)), - selfDf = IsoDf, gene = gene, inputCpat = cpat, cpatSpecies = species) + selfDf = IsoDf, gene = gene, inputCpat = cpat, cpatSpecies = species, squish = squish, inputPfam = pfam) + + labs(y = "") return(p) } @@ -479,11 +517,11 @@ visualise_ORFs <- function(refgtf,tgtf, pgtf, tclassfiles, pclassfiles, gene, tr refIDs <- unique(refgtf[refgtf$gene_name == gene & !is.na(refgtf$transcript_id), "transcript_id"]) if(!is.null(transcript)){ - pID <- pclassfiles %>% filter(corrected_acc == transcript) %>% .[["isoform"]] + pID <- pclassfiles %>% dplyr::filter(corrected_acc %in% transcript) %>% .[["isoform"]] datIDs <- list( Reference = refIDs, - `RNA Transcript` = pclassfiles %>% filter(corrected_acc == transcript) %>% .[["isoform"]], - `RNA Isoform` = unique(pgtf %>% dplyr::filter(transcript %in% pID) %>% .[["gene_id"]]) + `RNA Transcript` = pclassfiles %>% dplyr::filter(corrected_acc == transcript) %>% .[["isoform"]], + `Protein Isoform` = unique(pgtf %>% dplyr::filter(transcript %in% pID) %>% .[["gene_id"]]) ) p <- generalggTranPlots(datIDs, tgtf, tclassfiles, gene, cpat, species) @@ -493,10 +531,10 @@ visualise_ORFs <- function(refgtf,tgtf, pgtf, tclassfiles, pclassfiles, gene, tr tORFID <- unique(pgtf %>% dplyr::filter(transcript %in% tID) %>% .[["gene_id"]]) transcriptIDs <- list(Reference = refIDs, `RNA Transcript` = tID) - proteinIDs <- list(Reference = refIDs,`RNA Isoform` = tORFID) + proteinIDs <- list(Reference = refIDs,`Protein Isoform` = tORFID) pT <- generalggTranPlots(transcriptIDs, tgtf, tclassfiles, gene) - pP <- generalggTranPlots(proteinIDs, tgtf, tclassfiles, gene, cpat, species) + pP <- generalggTranPlots(proteinIDs, pgtf, pclassfiles, gene, cpat, species) p <- plot_grid(pT, pP, labels = c("i","ii")) @@ -504,3 +542,73 @@ visualise_ORFs <- function(refgtf,tgtf, pgtf, tclassfiles, pclassfiles, gene, tr return(p) } + +visualise_ORFs_NMD <- function(transcripts, gene){ + transcriptList <- list( + Reference = RefIsoforms[[gene]][1:2], + `NMD` = as.character(transcripts) + ) + proteinList <- list( + `NMD Protein` = unique(gtf$ptarg_merged %>% filter(transcript %in% as.character(transcripts)) %>% .[["gene_id"]]) + ) + + bothList <- c(transcriptList, proteinList) + print(bothList) + p <- generalggTranPlots(bothList, gtf$targ_merged, class.files$targ_filtered, gene) + return(p) +} + +plot_expression_summed <- function(TList, TName = NULL, AgeDiv = FALSE){ + + if(length(TList) > 0){ + gene <- class.files$targ_filtered[class.files$targ_filtered$isoform %in% TList, "associated_gene"] + message("************************ Gene:", (unique(gene))) + + dat <- subset(Exp$targ_ont$normAll, row.names(Exp$targ_ont$normAll) %in% TList) %>% dplyr::select(-associated_gene) %>% + apply(.,2,sum) %>% + reshape2::melt(value.name = "sumReads") %>% + tibble::rownames_to_column(., var = "sample") %>% + mutate(sample = word(sample, c(2), sep = fixed("_"))) %>% + left_join(., phenotype$targ_ont, by = "sample") %>% + mutate(group = factor(ifelse(group == "CASE","TG","WT"), levels = c("WT","TG"))) + + dat <<- dat + + + if(isFALSE(AgeDiv)){ + p <- ggplot(dat, aes(x = group, y = sumReads)) + geom_boxplot(outlier.shape = NA) + + geom_point(position=position_jitterdodge(jitter.width=2, dodge.width = 0), aes(colour = factor(time)), size = 3) + + mytheme + labs(x = "", y = "Normalized counts", subtitle = TName) + + scale_colour_manual(values = c("grey","azure4","black","red"), name = "Age (months)") + + theme(legend.position = "top") + }else{ + p <- ggplot(dat, aes(x = group, y = sumReads, colour = as.factor(time))) + geom_boxplot() + + geom_point(position=position_jitterdodge(), aes(colour = factor(time)), size = 3) + + mytheme + labs(x = "", y = "Normalized counts", subtitle = TName) + + scale_colour_manual(values = c("grey","azure4","black","red"), name = "Age (months)") + + theme(legend.position = "top") + } + + message("linear regression:") + res <- lm(sumReads ~ group + time, data = dat) + print(summary(res)) + + ##transform our data into log2 base. + # add 1 to deal with 0 + dat$sumReads <- dat$sumReads + 1 + dat <- dat %>% mutate(log2Reads = log2(sumReads)) + control <- mean(dat[dat$group == "WT","log2Reads"]) + TG <- mean(dat[dat$group == "TG","log2Reads"]) + foldchange <- TG - control + message("log2FC of TG relative to control") + print(foldchange) + + return(p) + + }else{ + message("********************* No Transcripts") + } + + +} + From 6b751fbf58677166dc04dde807dd35d6055141f3 Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 7 Mar 2024 11:50:58 +0000 Subject: [PATCH 22/29] Mods to Jon's feedback --- Config + Stats Add additional paths and input for CE, IR and NMD for supplementary figures Proteogenomics stats --- Main Figures Figure 4: Add Mapt top-ranked genotype DTE Figure 6: Re-order Trem2 plots --- Supplementary Figures Add cryptic exon Add IR and NMD --- Paper_Figures/1_generate_stats.R | 29 ++++++ Paper_Figures/2_generate_suppFig.R | 140 ++++++++++++++++++++++++++++- Paper_Figures/3_generate_mainFig.R | 20 ++++- Paper_Figures/rTg4510_config.R | 35 +++++++- 4 files changed, 216 insertions(+), 8 deletions(-) diff --git a/Paper_Figures/1_generate_stats.R b/Paper_Figures/1_generate_stats.R index ae64a70..deb693b 100644 --- a/Paper_Figures/1_generate_stats.R +++ b/Paper_Figures/1_generate_stats.R @@ -441,13 +441,24 @@ message("Number of transcripts with ORF ranked 1 and has stop codons, and coding length(unique(mouseProtein$t2p.collapse.refined[mouseProtein$t2p.collapse.refined$pb_accs %in% RefinedORFCoding$seq_ID,"corrected_acc"]))) GSselectedcollapsedID <- mouseProtein$t2p.collapse.refined[mouseProtein$t2p.collapse.refined$pb_accs %in% RefinedORFCoding$seq_ID,"base_acc"] +CorrectedcollapsedID <- mouseProtein$t2p.collapse.refined[mouseProtein$t2p.collapse.refined$pb_accs %in% RefinedORFCoding$seq_ID,"corrected_acc"] + +# note one transcript was filtered from SQANTI protein so off by 1 when calculating difference +message("Number of transcripts with ORF...collapsed: ", length(unique(setdiff(RefinedORFCoding$seq_ID, CorrectedcollapsedID)))) +ORFCorrectedCollapsedID <- unique(setdiff(RefinedORFCoding$seq_ID, CorrectedcollapsedID)) +class.files$targ_filtered %>% filter(isoform %in% ORFCorrectedCollapsedID) %>% group_by(structural_category) %>% tally() + class.files$protein_filtered_final <- class.files$protein_filtered[class.files$protein_filtered$pb %in% GSselectedcollapsedID,] message("Number of protein products after filtering: ", nrow(class.files$protein_filtered_final)) + class.files$protein_filtered_final <- class.files$protein_filtered_final %>% mutate(ensemblID = word(tx_gene, c(1), sep = fixed("."))) %>% left_join(., ensemblID, by = "ensemblID") %>% dplyr::rename("associated_gene" = "gene_name") class.files$protein_filtered_final <- merge(class.files$protein_filtered_final, distinct(mouseProtein$t2p.collapse.refined[,c("base_acc","corrected_acc")]), by.x = "pb", by.y = "base_acc") write.table(class.files$protein_filtered_final, paste0(dirnames$mprotein, "/7_classified_protein/all_iso_ont.sqanti_protein_classification_finalised.tsv"), sep = "\t", quote=F) +NNCCollapsedAll <- class.files$ptarg_filtered %>% dplyr::filter(!isoform %in% class.files$protein_filtered_final$corrected_acc) %>% filter(structural_category == "NNC") +message("Number of NNC transcripts with ORF ranked 1, coding potential > 0.44, and collapsed: ",nrow(RefinedORFCoding %>% filter(seq_ID %in% NNCCollapsedAll$isoform))) + nrow(class.files$protein_filtered_final[class.files$protein_filtered_final$pr_splice_cat == "novel_not_in_catalog",])/nrow(class.files$protein_filtered_final) nrow(class.files$protein_filtered_final[class.files$protein_filtered_final$pr_splice_cat == "novel_in_catalog",])/nrow(class.files$protein_filtered_final) @@ -463,3 +474,21 @@ colapsedID <- length(setdiff(mouseProtein$t2p.collapse.refined$pb_accs, mousePro dat <- Exp$targ_sorted_all[Exp$targ_sorted_all$isoform == "PB.39126.482",c("cell","TPM", "genotype", "time")] res <- lm(TPM ~ cell + genotype + time, data = dat) summary(res) + + +## ---------- rebuttal ---------- + +# correlation of AS events to other features +cor.test(totalNEvents$n, totalNEvents$MaxGeneLength) +cor.test(totalNEvents$n, totalNEvents$Maxexons) +cor.test(totalNEvents$n, totalNEvents$MeanRNASeqCounts) +cor.test(totalNEvents$n, totalNEvents$MaxTransLength) + + +# number of raw reads +summary(lm(Number.of.Reads ~ Age..months. + Genotype + Age..months. * Genotype, rawReadsWhole)) +summary(lm(Number.of.Iso.Seq.Reads ~ Age..months. + Genotype + Age..months. * Genotype, rawReadsTargeted)) +ontRawReads <- rawReadsTargeted[rawReadsTargeted$Number.of.ONT.Reads != "-",] %>% mutate(Number.of.ONT.Reads = as.numeric(as.character(Number.of.ONT.Reads))) +summary(lm(Number.of.ONT.Reads ~ Age..months. + Genotype + Age..months. * Genotype, ontRawReads)) + + \ No newline at end of file diff --git a/Paper_Figures/2_generate_suppFig.R b/Paper_Figures/2_generate_suppFig.R index 9ddf11b..10e6ffe 100644 --- a/Paper_Figures/2_generate_suppFig.R +++ b/Paper_Figures/2_generate_suppFig.R @@ -242,15 +242,148 @@ Cd33IRTrack <- ggTranPlots(gtf$targ_merged, class.files$targ_filtered, ## ---------- Revision ----------------------------------------------------------------- +## ---------- Crytpic exons ---------- +InternalNovelExons <- lapply(FICLENE, function(x) x[x$classification == "Internal_NovelExon",]) +InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, + mouseProtein$cpat[,c("seq_ID","Coding_prob")], + by.x = "transcriptID", by.y = "seq_ID")) +InternalNovelExons <- lapply(InternalNovelExons, function(x) x %>% mutate(coding = ifelse(Coding_prob < 0.44, "noncoding","coding"))) +InternalNovelExons <- lapply(InternalNovelExons, function(x) merge(x, + nmd[,c("pb","is_nmd","has_stop_codon")], + by.x = "transcriptID", by.y = "pb",all.x=TRUE)) + +plotCE <- function(gene, type){ + representative <- as.data.frame(gtf$ref_target %>% filter(type == "transcript" & transcript_type == "protein_coding") %>% group_by(gene_name) %>% top_n(1, width)) + allRep <- as.data.frame(gtf$ref_target) + # manual drop gene + print(gene) + df <- InternalNovelExons[[gene]] + if(gene == "Apoe"){ + # PB.40586.2026 = reference match ("PB.40586.2026") + df <- df[df$transcriptID %in% c("PB.40586.26305"),] + ref <-data.frame("PB.40586.2026",NA,NA,NA,NA,NA,"coding","False") + colnames(ref) <- colnames(df) + df <- rbind(df, ref) + }else if(gene == "Bin1"){ + df <- df[df$transcriptID %in% paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")),] + }else if(gene == "Clu"){ + df <- df[df$transcriptID %in% paste0("PB.14646.",c("6992")),] + # PB.40586.2026 = reference match ("PB.14646.139", "PB.14646.483") + ref <- data.frame("PB.14646.139",NA,NA,NA,NA,NA,"coding","False") + colnames(ref) <- colnames(df) + df <- rbind(df, ref) + }else if(gene == "Snca"){ + df <- df[df$transcriptID %in% paste0("PB.38419.",c("3145")),] + }else if(gene == "Trem2"){ + df <- df[df$transcript %in% paste0("PB.20818.", c("80","192","573","1074","493","362","1096")),] + }else{ + return(NULL) + } + transcriptList <- list( + #Reference = c("ENSMUST00000024791.14","ENSMUST00000113237.3"), + Reference = unique(allRep[allRep$gene_name == gene, "transcript_id"]), + #Reference = representative[ representative$gene_name == gene, "transcript_id"], + `not NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "False") %>% .[,c("transcriptID")])), + `NMD` = as.character(unique(df %>% filter(coding == "coding" & is_nmd == "True") %>% .[,c("transcriptID")])), + `non-coding` = as.character(unique(df %>% filter(coding == "noncoding") %>% .[,c("transcriptID")])) + ) + proteinList <- list( + #Reference = unique(allRep[allRep$gene_name == gene, "transcript_id"]), + `not NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`not NMD`) %>% .[["gene_id"]]), + `NMD` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`NMD`) %>% .[["gene_id"]]), + `non-coding` = unique(gtf$ptarg_merged %>% filter(transcript %in% transcriptList$`non-coding`) %>% .[["gene_id"]])) + + if(type == "transcript"){ + p <- generalggTranPlots(transcriptList, gtf$targ_merged, class.files$targ_filtered, gene) + }else if(type == "protein"){ + p <- generalggTranPlots(proteinList, gtf$targ_merged, class.files$targ_filtered, gene) + }else{ + bothList <- c(transcriptList, proteinList) + p <- generalggTranPlots(bothList, gtf$targ_merged, class.files$targ_filtered, gene) + } + + return(p) +} + + +pInternalNovelExonsTranscript <- lapply(names(InternalNovelExons), function(x) plotCE(x,"transcript")) +names(pInternalNovelExonsTranscript) <- names(InternalNovelExons) + +pInternalNovelExonsProtein <- lapply(names(InternalNovelExons), function(x) plotCE(x,"protein")) +names(pInternalNovelExonsProtein) <- names(InternalNovelExons) + +pInternalNovelExonsProteinBoth <- lapply(names(InternalNovelExons), function(x) plotCE(x,"proteinTranscript")) +names(pInternalNovelExonsProteinBoth) <- names(InternalNovelExons) + +CE <- c(paste0("PB.22007.",c("925","1554","1033","4967","1470","14222","1014")), + "PB.40586.26305", + paste0("PB.14646.",c("6992")), + paste0("PB.38419.",c("3145")), + paste0("PB.20818.", c("80","192","573","1074","493","362","1096"))) +plot_expression_summed(CE, "Cryptic exons", AgeDiv = TRUE) +plot_expression_summed(CE) + +plot_grid(pInternalNovelExonsProteinBoth$Apoe,pInternalNovelExonsProteinBoth$Bin1, pInternalNovelExonsProteinBoth$Clu, + pInternalNovelExonsProteinBoth$Trem2, pInternalNovelExonsProtein$Snca, ncol = 2) + +## ---------- IR ---------- + +IRList <- lapply(TargetGene,function(x) IR[IR$associated_gene == x,"transcript_id"]) +names(IRList) <- TargetGene +IRp <- lapply(IRList, function(x) plot_expression_summed(x, AgeDiv = TRUE)) +IRGenop <- lapply(IRList, function(x) plot_expression_summed(x, AgeDiv = FALSE)) + + +IR <- list( + Trem2Exp = IRp$Trem2 + labs(subtitle = "Trem2: IR transcripts"), + Cd33Exp = IRp$Cd33 + labs(subtitle = "Cd33: IR transcripts"), + Trem2Tracks = ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(IRList$Trem2),RefIsoforms$Trem2[1:2]), + colours = c(rep(wes_palette("Royal1")[2],5),rep("#0C0C78",10)), + lines = c(rep(wes_palette("Royal1")[2],5),rep("#0C0C78",10)), + gene = "Trem2",simple=TRUE), + Cd33Tracks = ggTranPlots(inputgtf=gtf$targ_merged,classfiles=class.files$targ_filtered, + isoList = c(as.character(IRList$Cd33),RefIsoforms$Cd33[1:2]), + colours = c(rep(wes_palette("Royal1")[2],9),rep("#0C0C78",10)), + lines = c(rep(wes_palette("Royal1")[2],9),rep("#0C0C78",10)), + gene = "Cd33",simple=TRUE) + +) + + +## ---------- NMD ---------- + +# list of NMD transcripts +NMD <- lapply(TargetGene,function(x) class.files$protein_filtered_final[class.files$protein_filtered_final$is_nmd == "TRUE" & class.files$protein_filtered_final$associated_gene == x,"corrected_acc"]) +names(NMD) <- TargetGene + +# plot summed expression of NMD by gene (genotype * age) +NMDp <- lapply(NMD, function(x) plot_expression_summed(x, AgeDiv = TRUE)) +for(i in 1:length(TargetGene)){NMDp[[i]] <- NMDp[[i]] + labs(subtitle = TargetGene[[i]])} +# plot summed expression of NMD by gene (genotype ) +NMDGenop <- lapply(NMD, function(x) plot_expression_summed(x, AgeDiv = FALSE)) +for(i in 1:length(TargetGene)){NMDGenop[[i]] <- NMDGenop[[i]] + labs(subtitle = TargetGene[[i]])} +names(NMDp) <- TargetGene +names(NMDGenop) <- TargetGene + +NMD_plots <- list( + Trem2Exp = NMDp$Trem2 + labs(subtitle = "Trem2: NMD transcripts"), + Cd33Exp = NMDp$Cd33 + labs(subtitle = "Cd33: NMD transcripts"), + Trem2Tracks = visualise_ORFs_NMD(NMD$Trem2, "Trem2"), + Cd33Tracks = visualise_ORFs_NMD(NMD$Cd33, "Cd33") +) + + ## ---------- Proteogenomics ---------- -pGeneralProtein <- plot_protein_general(class.files$ptarg_filtered, class.files$protein_filtered_final) +pGeneralProtein <- plot_protein_general(class.files$ptarg_filtered, class.files$protein_filtered_final, ORFCorrectedCollapsedID) pTrem2SameORF <- visualise_ORFs(refgtf=gtf$ref_target, tgtf=gtf$targ_merged,pgtf=gtf$ptarg_merged, tclassfiles=class.files$targ_filtered, pclassfiles=class.files$ptarg_filtered,gene="Trem2", transcript="PB.20818.54", cpat=mouseProtein$cpat, species="mouse") pTrem2UniqueORF <- visualise_ORFs(refgtf=gtf$ref_target, tgtf=gtf$targ_merged,pgtf=gtf$ptarg_merged, tclassfiles=class.files$targ_filtered, pclassfiles=class.files$ptarg_filtered,gene="Trem2",cpat=mouseProtein$cpat, species="mouse") + ## ---------- Output ----------------- pdf(paste0(output_dir,"/SuppFigures.pdf"), width = 10, height = 12) @@ -313,3 +446,8 @@ A <- plot_grid(pGeneralProtein[[1]], pGeneralProtein[[2]], pTrem2SameORF, ncol = B <- plot_grid(pTrem2UniqueORF, labels = c("D"), scale = 0.95) plot_grid(A,B, rel_widths = c(0.35,0.65)) dev.off() + +pdf(paste0(dirnames$targ_output,"/IR_NMD.pdf"), width = 22, height = 13) +plot_grid(IR$Trem2Tracks, IR$Trem2Exp, IR$Cd33Tracks, IR$Cd33Exp, labels = c("A","B","C","D")) +plot_grid(NMD_plots$Trem2Tracks, NMD_plots$Trem2Exp, NMD_plots$Cd33Tracks, NMD_plots$Cd33Exp, labels = c("A","B","C","D")) +dev.off() diff --git a/Paper_Figures/3_generate_mainFig.R b/Paper_Figures/3_generate_mainFig.R index cbc0763..f36d224 100644 --- a/Paper_Figures/3_generate_mainFig.R +++ b/Paper_Figures/3_generate_mainFig.R @@ -64,9 +64,15 @@ Gfap_p <- list( labs(title = "", subtitle = "RNA-Seq Transcript Expression", y = "Normalized counts (K)") + facet_grid(cols = vars(group)), - Sorted = plot_boxplot_SCN(Exp$targ_sorted_all,"PB.39126.482") + theme(legend.title=element_blank()) + labs(title = "", subtitle = "Gfap-201 ONT Transcript Expression") + theme(legend.position = c(0.15,0.8)) + Sorted = plot_boxplot_SCN(Exp$targ_sorted_all,"PB.39126.482") + theme(legend.title=element_blank()) + labs(title = "", subtitle = "Gfap-201 (LR.Gfap.16) Transcript Expression") + theme(legend.position = c(0.15,0.8)) ) - +Gfap_p$tracks1 <- Gfap_p$tracks1 + theme(legend.position = "None", + axis.line.x = element_line(colour = "grey80"), + panel.background = element_rect(fill = "white", colour = "grey50"), + panel.border = element_rect(fill = NA, color = "grey50", linetype = "dotted"), + axis.text.y= element_text(size=12), + strip.text.y = element_text(size = 12, color = "black"), + strip.background = element_rect(fill = "white", colour = "grey50")) ## ---------- Figure 3: Targeted ---------- @@ -198,6 +204,9 @@ tag_ggplot_seq <- function(p, id){ return(p1) } OntTargetedDiff <- lapply(seq_len(14), function(x) tag_ggplot_seq(OntTargetedDiff[[x]],x)) +OntTargetedDiff[[13]] <- OntTargetedDiff[[13]] + labs(tag = as.character(1)) + theme(text = element_text(size = 12)) +OntTargetedDiff[[14]] <- OntTargetedDiff[[14]] + labs(tag = as.character(2)) + theme(text = element_text(size = 12)) + Diffa <- arrangeGrob(grobs=lapply(OntTargetedDiff, function(p) p + guides(colour=FALSE)), ncol=2, bottom=textGrob("Age (months)", gp=gpar(fontsize=15)), @@ -259,6 +268,9 @@ Trem2_p <- list( Trem2_p$IF[[1]] <- Trem2_p$IF[[1]] + labs(title = "", y = "IF (%)") + theme(axis.text.x = element_text(angle = 0, hjust = 0.5, vjust = 0.5)) + guides(fill = FALSE) Trem2_p$IF[[2]] <- Trem2_p$IF[[2]] + labs(title = "", y = "IF (%)") + guides(colour = FALSE) +# stats +plot_boxplot_SCN(Exp$targ_sorted_all,iso=c("PB.95419.5"), ageDiv = FALSE) +plot_boxplot_SCN(Exp$targ_sorted_all,iso=c("PB.95419.7"), ageDiv = FALSE) ## ---------- Figure 5: Bin1 --------- @@ -433,8 +445,8 @@ dev.off() pdf(paste0(output_dir,"/MainFigures4.pdf"), width = 18, height = 16) plot_grid(plot_grid( - plot_grid(Trem2_p$dendro,Trem2_p$sorted,nrow=1, rel_widths = c(0.5,0.5), labels = c("A","B"), scale = 0.95), - plot_grid(Trem2_p$pheat$gtable,NULL,nrow=1, rel_widths = c(0.5,0.5), labels = c("D","E")), + plot_grid(Trem2_p$dendro,Trem2_p$pheat$gtable,nrow=1, rel_widths = c(0.5,0.5), labels = c("A","B"), scale = 0.95), + plot_grid(Trem2_p$sorted, NULL,nrow=1, rel_widths = c(0.5,0.5), labels = c("D","E")), plot_grid(Trem2_p$ONTTransExp,Trem2_p$ONTGeneExp,nrow=1, rel_widths = c(0.55,0.45), labels = c("F","G")), plot_grid(Trem2_p$IF[[1]],Trem2_p$IF[[2]],nrow=1, rel_widths = c(0.55,0.45),labels = c("H","I")), ncol = 1, rel_heights = c(0.25,0.3,0.25,0.25)), diff --git a/Paper_Figures/rTg4510_config.R b/Paper_Figures/rTg4510_config.R index c71d972..fb80042 100644 --- a/Paper_Figures/rTg4510_config.R +++ b/Paper_Figures/rTg4510_config.R @@ -40,6 +40,8 @@ dirnames <- list( targ_ont_root = paste0(root_dir, "rTg4510/F_ONT_Targeted"), #targ_anno = paste0(root_dir,"rTg4510/F_ONT_Targeted/thesis_dump/TALON/All/Merged/TargetGenes") targ_anno = paste0(root_dir,"rTg4510/G_Merged_Targeted/B_cupcake_pipeline/4_characterise/TargetGenes"), + # modified format output from FICLE + targ_anno_mod = paste0(root_dir,"rTg4510/G_Merged_Targeted/B_cupcake_pipeline/4_characterise/TargetGenesModFormat"), targ_output = paste0(root_dir, "/rTg4510/01_figures_tables/Targeted_Transcriptome"), # rnaseq @@ -90,16 +92,19 @@ ensemblID <- read.csv(paste0(dirnames$utils,"ensemblGeneName.csv")) class.names.files <- list( glob_iso = paste0(dirnames$glob_root, "/2_post_isoseq3/9_sqanti3/WholeIsoSeq.collapsed_RulesFilter_result_classification.txt"), targ_all = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts.txt"), + targ_qc = paste0(dirnames$targ_root, "/3_sqanti3/reRunValidation/all_iso_ont_collapsed_RulesFilter_result_classification.txt"), targ_filtered = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered.txt"), iso_match = paste0(dirnames$targ_iso_root, "/7b_matched_only/8d_sqanti3/MatchedMouse_RulesFilter_result_classification.txt"), targ_sorted = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_counts.txt"), targ_sorted_all = paste0(dirnames$SCN_root, "/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_counts.txt"), - ptarg_filtered = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt"), + ptarg_filtered = paste0(dirnames$targ_root, "/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts_filtered_pCollapsed.txt") #targ_iso = paste0(dirnames$targ_iso_root, "/thesis_dump/DiffAnalysis_noRNASEQ/SQANTI3/AllMouseTargeted.collapsed_classification.filtered_lite_classification.txt"), #targ_ont = paste0(dirnames$targ_ont_root, "/thesis_dump/TALON/All/Unfiltered/SQANTI3/ONTTargeted_unfiltered_talon_classification.txt"), ) -class.files <- lapply(class.names.files, function(x) SQANTI_class_preparation(x,"nstandard")) +class.files <- lapply(class.names.files, function(x) SQANTI_class_preparation(x,"nstandard")) + +class.files$targ_filtered <- class.files$targ_filtered %>% dplyr::filter(associated_gene %in% TargetGene) class.files$protein_filtered <- read.table(paste0(dirnames$mprotein, "/7_classified_protein/all_iso_ont.sqanti_protein_classification.tsv"), sep = "\t", as.is = T, header = T) # file below generated from 1_generate_stats.R class.files$protein_filtered_final <- read.table(paste0(dirnames$mprotein, "/7_classified_protein/all_iso_ont.sqanti_protein_classification_finalised.tsv")) @@ -218,6 +223,7 @@ Exp <- list( ) Exp$targ_sorted_all <- class.files$targ_sorted_all %>% + filter(associated_gene %in% c("Gfap",TargetGene)) %>% select(contains("TPM"), "isoform", "associated_gene", "associated_transcript") %>% reshape2::melt() %>% mutate(sample = word(variable, c(2),sep = fixed("_"))) %>% @@ -260,6 +266,7 @@ Merged_gene_class_df <- all_summarise_gene_stats(Gene_class=Targeted$Gene_class, # AS events ES <- input_FICLE_splicing_results(dirnames$targ_anno,"Exonskipping_tab") +ESNumAll <- ES %>% group_by(associated_gene) %>% tally(name = "numberESEvents") A5A3 <- input_FICLE_splicing_results(dirnames$targ_anno,"A5A3_tab") IR <- input_FICLE_splicing_results(dirnames$targ_anno,"IntronRetentionCounts") IRGen <- input_FICLE_splicing_results(dirnames$targ_anno,"IntronRetention_tab") @@ -270,6 +277,23 @@ NovelExons <- input_FICLE_splicing_results(dirnames$targ_anno,"NE_counts_pertran ApoeA5A3 <- read.csv(paste0(dirnames$targ_anno,"/Apoe/Stats/Apoe_A5A3_tab.csv")) ApoeExon <- read.csv(paste0(dirnames$targ_anno,"/Apoe/Stats/Apoe_Exonskipping_generaltab.csv")) +# novel cryptic exons +FICLENE <- list.files(path = dirnames$targ_anno_mod, pattern = "_NE_coordinates.csv", recursive = T, full.names = T) +FICLENE <- lapply(FICLENE, function(x) read.csv(x)) +names(FICLENE) <- word(list.files(path = dirnames$targ_anno, pattern = "_NE_coordinates.csv", recursive = T, full.names = F),c(1),sep=fixed("/")) +MaptES <- read.csv(paste0(dirnames$targ_anno_mod, "/Mapt/Stats/Mapt_general_exon_level.csv")) + +# correlation of AS events +reMerged_gene_class_df <- Merged_gene_class_df %>% tibble::rownames_to_column(., var = "ASEvent") %>% filter(ASEvent %in% c("A5A3","ES", "IR")) %>% + reshape2::melt(variable.name = "associated_gene", value.name = "numEvents") +reMerged_gene_class_df <- merge(Targeted$ref_gencode, reMerged_gene_class_df, by = "associated_gene") + +totalNEvents <- reMerged_gene_class_df %>% group_by(associated_gene) %>% tally(numEvents) %>% full_join(., Targeted$ref_gencode, by = "associated_gene") +totalNEvents <- merge(totalNEvents, ESNumAll, by = "associated_gene") +TargetedONTGene <- TargetedDESeq$ontResGeneAnno$wald$norm_counts %>% group_by(associated_gene) %>% dplyr::summarise(meanGeneExp = mean(normalised_counts)) +totalNEvents <- merge(totalNEvents, TargetedONTGene, by = "associated_gene") + + ## --------------------------- # Isabel's supplementary table of differentially expressed genes in rTg4510 rnaseq_results <- list( @@ -308,6 +332,7 @@ gtf$glob_iso <- rbind(gtf$glob_iso[,c("seqnames","strand","start","end","type"," mouseProtein = list( cpat = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont.ORF_prob.best.tsv"), sep ="\t", header = T), + cpat_best = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont_best_orf.tsv"), sep ="\t", header = T), mapped = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_orfs_mapped.tsv"), sep ="\t", header = T), noORF = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont.no_ORF.txt"), sep ="\t", header = F), t2p.collapse = read.table(paste0(dirnames$mprotein,"6_refined_database/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T), @@ -326,8 +351,12 @@ nmd <- read.table(paste0(dirnames$mprotein, "7_classified_protein/all_iso_ont.cl idx <- match(nmd$pb,class.files$ptarg_filtered$base_acc) nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.files$ptarg_filtered$corrected_acc[idx]), NA)) +## ------ raw reads ----- -## --------------------------- +rawReadsWhole <- read.table(paste0(dirnames$utils,"numReadsWhole.txt"), sep = "\t", header = T) +rawReadsTargeted <- read.table(paste0(dirnames$utils,"numReadsTargeted.txt"), sep = "\t", header = T) + +## --------------------------- Tappas ---- # TAPPAS (Differential Analysis) #tappas_dir <- list( # glob_iso = paste0(dirnames$glob_tabroot, "/IsoSeq_Expression"), From de21e9d22fa6c4dbfa12d68db3d2b0cceaf3c31a Mon Sep 17 00:00:00 2001 From: sl693 Date: Fri, 15 Mar 2024 16:31:09 +0000 Subject: [PATCH 23/29] remaining adhoc scripts differential expression analysis for SCN data merging bulk with SCN data utils files --- 0_utils/filter_default_reducecoverage.json | 20 +++ 0_utils/primer.fasta | 4 + .../1_IsoSeq_Pipeline/01_source_functions.sh | 2 +- .../1_IsoSeq_Pipeline/rTg4510_isoseq.config | 11 +- .../B_DESeq2/2_linear_regression_pacbioOnly.R | 155 ++++++++++++++++++ .../rTg4510_ont_qc_runs.config.R | 10 +- .../1c_merged_collapse_sqanti3.sh | 9 +- .../B_cupcake_pipeline/1d_rerunSqanti3.sh | 43 +++++ .../rTg4510_merged.config | 32 ++-- .../B_DESeq2/1_linear_regression.R | 17 +- .../B_DESeq2/2_linear_regression_SCN.R | 89 ++++++++++ D_sortedNuclei_Transcriptome/6_QC.sh | 12 ++ D_sortedNuclei_Transcriptome/7_mergeBulk.sh | 108 ++++++++++++ Paper_Figures/rTg4510_config.R | 34 +--- 14 files changed, 475 insertions(+), 71 deletions(-) create mode 100644 0_utils/filter_default_reducecoverage.json create mode 100644 0_utils/primer.fasta create mode 100644 A_Global_Transcriptome/2_Differential_Analysis/B_DESeq2/2_linear_regression_pacbioOnly.R create mode 100644 B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1d_rerunSqanti3.sh create mode 100644 B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/2_linear_regression_SCN.R create mode 100644 D_sortedNuclei_Transcriptome/6_QC.sh create mode 100644 D_sortedNuclei_Transcriptome/7_mergeBulk.sh diff --git a/0_utils/filter_default_reducecoverage.json b/0_utils/filter_default_reducecoverage.json new file mode 100644 index 0000000..89e4e32 --- /dev/null +++ b/0_utils/filter_default_reducecoverage.json @@ -0,0 +1,20 @@ +{ + "full-splice_match": [ + { + "perc_A_downstream_TTS":[0,59] + } + ], + "rest": [ + { + "perc_A_downstream_TTS":[0,59], + "all_canonical":"canonical", + "RTS_stage":"FALSE" + }, + { + "perc_A_downstream_TTS":[0,59], + "RTS_stage":"FALSE", + "min_cov":0 + } + ] +} + diff --git a/0_utils/primer.fasta b/0_utils/primer.fasta new file mode 100644 index 0000000..cc9c761 --- /dev/null +++ b/0_utils/primer.fasta @@ -0,0 +1,4 @@ +>primer_5p +AAGCAGTGGTATCAACGCAGAGTACATGGG +>primer_3p +GTACTCTGCGTTGATACCACTGCTT diff --git a/A_Global_Transcriptome/1_IsoSeq_Pipeline/01_source_functions.sh b/A_Global_Transcriptome/1_IsoSeq_Pipeline/01_source_functions.sh index e5ddc0f..a93ef0d 100644 --- a/A_Global_Transcriptome/1_IsoSeq_Pipeline/01_source_functions.sh +++ b/A_Global_Transcriptome/1_IsoSeq_Pipeline/01_source_functions.sh @@ -398,7 +398,7 @@ run_sqanti3(){ # sqanti qc echo "Processing Sample $1 for SQANTI2 QC" - + # no kalliso file if [ $8 == "rnaseq" ]; then python ${SQANTI3_DIR}/sqanti3_qc.py -t 30 $3/$2 ${GENOME_GTF} ${GENOME_FASTA} --CAGE_peak ${CAGE_PEAK} --coverage "./*SJ.out.bed" --polyA_motif_list ${POLYA} --genename --isoAnnotLite --gff3 ${GFF3} --report skip &> $1.sqanti.qc.log diff --git a/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config b/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config index 9bc5bcc..39e4cba 100644 --- a/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config +++ b/A_Global_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config @@ -19,16 +19,17 @@ ## Output name and relevant info export NAME=WholeIsoSeq +export J20NAME=WholeJ20IsoSeq ## Output root directory filepath (ensure path exists) -export rTG4510=/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 -export WKD_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/A_IsoSeq_Whole +export rTG4510=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510 +export WKD_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/A_IsoSeq_Whole ## --------------------------- ## Source functions and scripts directory -export SC_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/A_Global_Transcriptome +export SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/A_Global_Transcriptome #export GENERALFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General #export TAMAFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General/2_Transcriptome_Annotation/TAMA @@ -36,7 +37,7 @@ export SC_ROOT=/lustre/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 ## --------------------------- ## Reference -export REFERENCE=/lustre/projects/Research_Project-MRC148213/sl693/reference +export REFERENCE=/lustre/projects/Research_Project-MRC148213/lsl693/reference export GENOME_FASTA=$REFERENCE/mouse/mm10.fa export GENOME_GTF=$REFERENCE/annotation/gencode.vM22.annotation.gtf #export GENOME_LNCRNA_GTF=$REFERENCE/mouse/gencode.vM25.long_noncoding_RNAs.gtf @@ -72,7 +73,7 @@ export J20_BAM_FILES=($(grep "^[^#;]" $J20_SAMPLE_CONFIG | awk '{print $2}')) ## --------------------------- ## Software -export SOFTDIR=/lustre/projects/Research_Project-MRC148213/sl693/software +export SOFTDIR=/lustre/projects/Research_Project-MRC148213/lsl693/software export CUPCAKE=$SOFTDIR/cDNA_Cupcake export ANNOTATION=$CUPCAKE/annotation diff --git a/A_Global_Transcriptome/2_Differential_Analysis/B_DESeq2/2_linear_regression_pacbioOnly.R b/A_Global_Transcriptome/2_Differential_Analysis/B_DESeq2/2_linear_regression_pacbioOnly.R new file mode 100644 index 0000000..4ad1180 --- /dev/null +++ b/A_Global_Transcriptome/2_Differential_Analysis/B_DESeq2/2_linear_regression_pacbioOnly.R @@ -0,0 +1,155 @@ +## ---------- Script ----------------- +## +## Purpose: perform differential analysis on mouse rTg4510 ONT targeted datasets using linear regression +## Transcript level - Iso-Seq, RNA-Seq (hybrid, already aligned to Iso-Seq) +## Gene level - Iso-Seq, RNA-Seq +## 1/ run DESeq2 (Wald and LRT) +## 2/ annotate results using class.files +## 3/ split by genotype and age effects +## Author: Szi Kay Leung (S.K.Leung@exeter.ac.uk) +# https://hbctraining.github.io/DGE_workshop/lessons/04_DGE_DESeq2_analysis.html + + +## ---------- packages ----------------- + +suppressMessages(library("dplyr")) +suppressMessages(library("DESeq2")) +suppressMessages(library("ggplot2")) +suppressMessages(library("stringr")) +suppressMessages(library("ggrepel")) +suppressMessages(library("wesanderson")) +suppressMessages(library("cowplot")) +suppressMessages(library("pheatmap")) +suppressMessages(library("RColorBrewer")) + + +## ---------- source functions ----------------- + +LOGEN_ROOT = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen/" +SC_ROOT = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510/A_Global_Transcriptome/1_IsoSeq_Pipeline/" +source(paste0(LOGEN_ROOT, "/aesthetics_basics_plots/pthemes.R")) +source(paste0(LOGEN_ROOT, "/transcriptome_stats/read_sq_classification.R")) +source(paste0(LOGEN_ROOT, "differential_analysis/run_DESeq2.R")) +source(paste0(LOGEN_ROOT, "differential_analysis/plot_transcript_level.R")) +source(paste0(SC_ROOT, "02_source_characterise_functions.R")) + + +## ---------- input ----------------- + +dirnames <- list( + rTg4510 = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/", + output = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/01_figures_tables/Whole_Transcriptome", + whole = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/A_IsoSeq_Whole/", + rnaseq = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/C_RNASeq/1_RNASeq_Isabel/" +) + +input_files <- list( + phenotype = paste0(dirnames$rTg4510, "0_metadata/A_isoseq_whole/WholeIsoSeq_PhenotypeTAPPAS.txt"), + expression = paste0(dirnames$whole, "2_post_isoseq3/7_tofu/WholeIsoSeq_fl_count.csv"), + classfiles = paste0(dirnames$whole, "2_post_isoseq3/9_sqanti3/WholeIsoSeq.collapsed_RulesFilter_result_classification.txt"), + rnaseq_expression = paste0(dirnames$whole, "2_post_isoseq3/10_rnaseq2isoseq/WholeIsoSeq_rnaseq.expression.txt"), + rnaseq_phenotype = paste0(dirnames$whole, "3_differential/1_Input/B_hybrid_59/WholeAllMouse_PhenotypeTAPPAS.txt"), + rnaseq_genotype = paste0(dirnames$rnaseq, "Isabel_Supp2_Tg4510GenotypeDEG.csv"), + rnaseq_progressive = paste0(dirnames$rnaseq, "Isabel_Supp4_Tg4510AgeGenotypeDEG.csv") +) + +input <- list() +# phenotype +input$phenotype <- read.table(input_files$phenotype, sep = "\t", header = T) +input$phenotype$sample <- word(str_remove(as.character(input$phenotype$sample),"FL."),c(1),sep=fixed("_")) +# expression +input$expression <- read.csv(input_files$expression) +input$gene_expression <- input$expression %>% mutate(associated_gene = word(id,c(2), sep = fixed("."))) +input$gene_expression <- aggregate(. ~ associated_gene, input$gene_expression %>% select(-"id"), sum) +rownames(input$gene_expression) <- NULL +# SQANTI class files +input$classfiles <- SQANTI_class_preparation(input_files$classfiles,"ns") +# RNA-Seq differential results +input$rnaseq_genotype <- read.csv(input_files$rnaseq_genotype) +input$rnaseq_progressive <- read.csv(input_files$rnaseq_progressive) +input$rnaseq_phenotype <- read.table(input_files$rnaseq_phenotype, sep = "\t", header = T) +input$rnaseq_expression <- read.table(input_files$rnaseq_expression, sep = "\t", header = T) +input$rnaseq_gene_expression <- input$rnaseq_expression %>% mutate(associated_gene = word(X,c(2), sep = fixed("."))) +input$rnaseq_gene_expression <- aggregate(. ~ associated_gene, input$rnaseq_gene_expression %>% select(-"X"), sum) +rownames(input$rnaseq_gene_expression) <- NULL + + +## ---------- Iso-Seq Differential gene expression ----------------- + +# run DESeq2 +resGene <- list( + wald = run_DESeq2(test="Wald",input$gene_expression,input$phenotype,exprowname="associated_gene",threshold=10,controlname="CONTROL",interaction="On"), + lrt = run_DESeq2(test="LRT",input$gene_expression,input$phenotype,exprowname="associated_gene",threshold=10,controlname="CONTROL",interaction="On") +) + +# annotate results +resGeneAnno <- lapply(resGene, function(x) anno_DESeq2(x,input$classfiles,input$phenotype,controlname="CONTROL",level="gene",sig=0.1)) + + +## ---------- Iso-Seq Differential transcript expression ----------------- + +# run DESeq2 +resTran <- list( + wald = run_DESeq2(test="Wald",input$expression,input$phenotype,threshold=10,exprowname="id",controlname="CONTROL",design="time_series",interaction="On"), + waldgenotype = run_DESeq2(test="Wald",input$expression,input$phenotype,threshold=10,exprowname="id",controlname="CONTROL",design="case_control"), + lrt = run_DESeq2(test="LRT",input$expression,input$phenotype,threshold=10,exprowname="id",controlname="CONTROL",design="time_series",interaction="On") +) + +# annotate results and filter at 0.05 +resTranAnno <- lapply(resTran, function(x) anno_DESeq2(x,input$classfiles,input$phenotype,controlname="CONTROL",level="transcript",sig=0.1)) + +# split by genotype and age effects +resTranEffects <- dissect_DESeq2(wald=resTranAnno$wald$anno_res,lrt=resTranAnno$lrt$anno_res) +resTranEffects <- do.call(rbind,resTranEffects) +resTranEffects + + +## ---------- RNA-Seq Differential transcript expression ----------------- + +# results from running DESeq2 +RresTran <- list( + wald = run_DESeq2(test="Wald",input$rnaseq_expression,input$rnaseq_phenotype,threshold=10,exprowname="X",controlname="CONTROL",design="time_series",interaction="On"), + lrt = run_DESeq2(test="LRT",input$rnaseq_expression,input$rnaseq_phenotype,threshold=10,exprowname="X",controlname="CONTROL",design="time_series",interaction="On") +) + +# annotate results +RresTranAnno <- lapply(RresTran, function(x) anno_DESeq2(x,input$classfiles,input$rnaseq_phenotype,controlname="CONTROL",level="transcript")) + +# split by genotype and age effects +RresTranEffects <- dissect_DESeq2(RresTranAnno$wald$anno_res,RresTranAnno$lrt$anno_res) + + +## ---------- RNA-Seq Differential gene expression ----------------- + +# results from running DESeq2 +RresGene <- list( + wald = run_DESeq2(test="Wald",input$rnaseq_gene_expression,input$rnaseq_phenotype,threshold=10,exprowname="associated_gene",controlname="CONTROL",interaction="On"), + lrt = run_DESeq2(test="LRT",input$rnaseq_gene_expression,input$rnaseq_phenotype,threshold=10,exprowname="associated_gene",controlname="CONTROL",interaction="On") +) + +# annotate results +RresGeneAnno <- lapply(RresGene, function(x) anno_DESeq2(x, input$classfiles, input$rnaseq_phenotype, controlname="CONTROL", level="gene", sig=0.1)) + + +## ---------- Gene level comparison ----------------- + +# comparison of effect size (statistics) at the gene level between Iso-Seq and RNA-Seq (Isabel's results) +resGeneComparison <- list( + # genotype level, like-to-like comparison with wald test + genotype = merge(resGeneAnno$wald$stats_Wald[,c("associated_gene","WaldStatistic_group_CASE_vs_CONTROL")], + input$rnaseq_genotype[,c("Gene", "WaldStatistic_Genotype_TG_vs_WT")], + by.x = "associated_gene", by.y = "Gene"), + + # interaction level, like-to-like copmarison with lrt test + interaction = merge(resGeneAnno$lrt$stats_LRT[,c("associated_gene","LRTStatistic")], + input$rnaseq_progressive[,c("Gene", "LRTStatistic")], + by.x = "associated_gene", by.y = "Gene") +) + +## ---------- Output ----------------- + +saveRDS(resTranAnno, file = paste0(dirnames$output, "/IsoSeq_DESeq2TranscriptLevel.RDS")) +saveRDS(resGeneAnno, file = paste0(dirnames$output, "/IsoSeq_DESeq2GeneLevel.RDS")) +saveRDS(RresTranAnno, file = paste0(dirnames$output, "/RNASeqHybrid_DESeq2TranscriptLevel.RDS")) +saveRDS(RresGeneAnno, file = paste0(dirnames$output, "/RNASeqHybrid_DESeq2GeneLevel.RDS")) +saveRDS(resGeneComparison, file = paste0(dirnames$output, "/Comparison_DESeq2GeneLevel.RDS")) diff --git a/B_Targeted_Transcriptome/1_ONT_Pipeline/rTg4510_ont_qc_runs.config.R b/B_Targeted_Transcriptome/1_ONT_Pipeline/rTg4510_ont_qc_runs.config.R index c7653cf..78a1568 100644 --- a/B_Targeted_Transcriptome/1_ONT_Pipeline/rTg4510_ont_qc_runs.config.R +++ b/B_Targeted_Transcriptome/1_ONT_Pipeline/rTg4510_ont_qc_runs.config.R @@ -12,17 +12,17 @@ suppressMessages(library("dplyr")) ## ---------- LOGEN modules ----------------- -LOGEN = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen/" +LOGEN = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" source(paste0(LOGEN, "longread_QC/number_ont_reads.R")) ## ---------- Directory and input files ----------------- dirnames <- list( - root = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/F_ONT_Targeted/", - raw = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/1_raw/F_ont_targeted/", - meta = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/0_metadata/F_ont_targeted/", - mapt = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/F_ONT_Targeted/0_characterise/transgene/" + root = "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/F_ONT_Targeted/", + raw = "/lustre/recovered/Research_Project-MRC148213/sl693/rTg4510/1_raw/F_ont_targeted/", + meta = "/lustre/recovered/Research_Project-MRC148213/sl693/rTg4510/0_metadata/F_ont_targeted/", + mapt = "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/F_ONT_Targeted/0_characterise/transgene/" ) diff --git a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1c_merged_collapse_sqanti3.sh b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1c_merged_collapse_sqanti3.sh index 288b106..5369632 100644 --- a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1c_merged_collapse_sqanti3.sh +++ b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1c_merged_collapse_sqanti3.sh @@ -16,9 +16,9 @@ # source config file and function script module load Miniconda2/4.3.21 -FICLE_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/FICLE/ -LOGEN_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen -SC_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 +FICLE_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/FICLE/ +LOGEN_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510 source $SC_ROOT/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/rTg4510_merged.config source $SC_ROOT/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/01_source_function.sh export PATH=$PATH:${LOGEN_ROOT}/assist_ont_processing @@ -53,6 +53,9 @@ demux_ont_isoseq_cupcake_collapse.py \ ${ONT_TCLEAN_DIR}/AllBatch2Batch3/AllBatch2Batch3_mergedsample_id.csv \ ${ISO_MERGED_CLUSTER_DIR}/AllMouseTargeted.clustered.demuxed.cluster_report.csv \ --ont_sample=${ONT_BARCODE_CONFIG} + +# kallisto input (RNA-Seq data) + # sqanti3 echo "Running SQANTI3..." diff --git a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1d_rerunSqanti3.sh b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1d_rerunSqanti3.sh new file mode 100644 index 0000000..651877d --- /dev/null +++ b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/B_cupcake_pipeline/1d_rerunSqanti3.sh @@ -0,0 +1,43 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=20:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mem=200G # specify bytes memory to reserve +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=1d_rerunSqanti3.o +#SBATCH --error=1d_rerunSqanti3.e + + +##------------------------------------------------------------------------- + +# 05/02/2024: Align RNA-Seq to all_iso_ont collapsed data and re-run SQANTI3 + +module load Miniconda2/4.3.21 +FICLE_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/FICLE/ +LOGEN_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510 +source $SC_ROOT/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/rTg4510_merged.config + +NAME="all_iso_ont" +OUTPUTDIR=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/3_sqanti3/reRunValidation +RNASEQ_MAPPED_DIR=${RNASEQ_MAPPED_DIR}/All + +##------------------------------------------------------------------------- + +echo "Running SQANTI3..." +source activate sqanti2_py3 +cd ${OUTPUTDIR} +python $SQANTI3_DIR/sqanti3_qc.py $CUPMERGE_DIR/2_collapse/${NAME}_collapsed.gff \ +$GENOME_GTF $GENOME_FASTA -t 30 --CAGE_peak $CAGE_PEAK --polyA_motif_list $POLYA -c "${RNASEQ_MAPPED_DIR}/*SJ.out.bed" \ +--genename --skipORF --report skip &> ${NAME}_sqanti_qc.log + +# sqanti3 filter +python $SQANTI3_DIR/sqanti3_filter.py rules ${NAME}_collapsed_classification.txt \ +--faa=${NAME}_collapsed_corrected.fasta \ +--gtf=${NAME}_collapsed_corrected.gtf \ +-j=${filteringJson} --skip_report &> ${NAME}_sqanti_filter.log \ No newline at end of file diff --git a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/rTg4510_merged.config b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/rTg4510_merged.config index da43802..549ecb9 100644 --- a/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/rTg4510_merged.config +++ b/B_Targeted_Transcriptome/2_Merged_Isoform_Characterisation/rTg4510_merged.config @@ -4,11 +4,12 @@ ## --------------------------- ## Source functions and scripts directory -export SC_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 -export GENERALFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General/2_Transcriptome_Annotation -export FICLE=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/FICLE/ficle.py -export LOGEN=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen/ -export rTg4510_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510 +export SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510 +export GENERALFUNC=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/General/2_Transcriptome_Annotation +export FICLE=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/FICLE/ficle.py +export LOGEN=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/ +export rTg4510_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510 +UTILSDIR=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/0_utils NAME=IsoSeqONT ISO_NAME=AllMouseTargeted @@ -40,7 +41,7 @@ ONT_UNFILTERED_SQ_DIR=${rTg4510_ROOT}/F_ONT_Targeted/7_sqanti3/Unfiltered/basic # ONT gtf ONT_GTF=$ONT_UNFILTERED_SQ_DIR/$ONT_NAME"_unfiltered_talon_corrected.gtf" ONT_COMBINED_RAW_GTF=${rTg4510_ROOT}/F_ONT_Targeted/4_minimap/all_combined_reads.gtf -ONT_REVISED_GTF=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/F_ONT_Targeted/6b_tofu_sqanti3/all_merged.filtered.gtf +ONT_REVISED_GTF=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/F_ONT_Targeted/6b_tofu_sqanti3/all_merged.filtered.gtf # TALON files TALON_ANNO=${rTg4510_ROOT}/F_ONT_Targeted/6_talon/ONTTargeted_talon_read_annot.tsv @@ -62,7 +63,7 @@ ISOSEQ_GTF=$ISOSEQ_SQ_DIR/$ISO_NAME.collapsed_classification.filtered_lite.gtf # Annotation TGENES_ENS=${rTg4510_ROOT}/0_metadata/B_isoseq_targeted/TargetGenesEnsembleId.txt TGENES=(Apoe Clu App Snca Ptk2b Bin1 Fus Vgf Picalm Mapt Trem2 Tardbp Sorl1 Abca7 Fyn Abca1 Cd33 Ank1 Rhbdf2 Trpa1) -TGENES_REF=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/Merged_Targeted/4_characterise/TargetGenesRef +TGENES_REF=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/Merged_Targeted/4_characterise/TargetGenesRef TGENES_TXT=${rTg4510_ROOT}/0_metadata/F_ont_targeted/TargetGenes.tsv # Samples @@ -73,15 +74,15 @@ MERGE_SAMPLES_EXP=${META_ROOT}/isoseq_ont_samples_matchedcols.csv ## --------------------------- # Short read data (RNA-Seq) -RNASEQ_FILTERED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/1_raw/C_rnaseq_raw/Tg4510_filtered +RNASEQ_FILTERED_DIR=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/1_raw/C_rnaseq_raw/Tg4510_filtered RNASEQ_SAMPLES_NAMES=$(awk '{print $1}' $SC_ROOT/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/rTg4510_rnaseq_samples.tsv) -RNASEQ_MAPPED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/C_RNASeq/MAPPED -RNASEQ_COUNTS=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/C_RNASeq/1_RNASeq_Isabel/rTg4510_DESeq2normalizedcounts.csv +RNASEQ_MAPPED_DIR=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/C_RNASeq/2_aligned +RNASEQ_COUNTS=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/C_RNASeq/1_RNASeq_Isabel/rTg4510_DESeq2normalizedcounts.csv ## --------------------------- ## Reference -export REFERENCE=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/references +export REFERENCE=/lustre/projects/Research_Project-MRC148213/lsl693/references export GENOME_FASTA=$REFERENCE/mouse/mm10.fa export GENOME_GTF=$REFERENCE/annotation/gencode.vM22.annotation.gtf export PFAM_REF=$REFERENCE/Pfam/Pfam-A.hmm @@ -93,8 +94,8 @@ export LOGITMODEL=${REFERENCE}/CPAT/Mouse_logitModel.RData ## --------------------------- ## Software -export SOFTDIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/software -export CUPCAKE=$SOFTDIR/Post_Isoseq3/cDNA_Cupcake +export SOFTDIR=/lustre/projects/Research_Project-MRC148213/lsl693/software +export CUPCAKE=$SOFTDIR/cDNA_Cupcake export ANNOTATION=$CUPCAKE/annotation export SEQUENCE=$CUPCAKE/sequence export PYTHONPATH=$PYTHONPATH:$SEQUENCE @@ -115,10 +116,9 @@ export PYTHONPATH=$PYTHONPATH:$CUPCAKE/sequence ## Software input files # SQANTI3 input files -CAGE_PEAK=$SQANTI3_DIR/data/ref_TSS_annotation/human.refTSS_v3.1.hg38.bed +CAGE_PEAK=$SQANTI3_DIR/data/ref_TSS_annotation/mouse.refTSS_v3.1.mm10.bed POLYA=$SQANTI3_DIR/data/polyA_motifs/mouse_and_human.polyA_motif.txt -GFF3=$TAPPAS_DIR/Homo_sapiens_GRCh38_Ensembl_86.gff3 - +filteringJson=$UTILSDIR/filter_default_reducecoverage.json ## --------------------------- diff --git a/B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/1_linear_regression.R b/B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/1_linear_regression.R index c994b28..fbbd323 100644 --- a/B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/1_linear_regression.R +++ b/B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/1_linear_regression.R @@ -23,7 +23,7 @@ suppressMessages(library("RColorBrewer")) ## ---------- source functions ----------------- -LOGEN_ROOT = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/LOGen/" +LOGEN_ROOT = "/lustre/projects/Research_Project-MRC148213/sl693/scripts/LOGen/" source(paste0(LOGEN_ROOT, "/transcriptome_stats/read_sq_classification.R")) source(paste0(LOGEN_ROOT, "differential_analysis/run_DESeq2.R")) @@ -32,26 +32,27 @@ source(paste0(LOGEN_ROOT, "differential_analysis/run_DESeq2.R")) # directory names dirnames <- list( - rTg4510 = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/", - output = "/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/01_figures_tables/Targeted_Transcriptome" + rTg4510 = "/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/", + output = "/lustre/projects/Research_Project-MRC148213/sl693/rTg4510/01_figures_tables/Targeted_Transcriptome" ) # read input files input_files <- list( - ontPhenotype = paste0(dirnames$rTg4510, "0_metadata/F_ont_targeted/ONT_phenotype.txt"), - isoPhenotype = paste0(dirnames$rTg4510, "0_metadata/B_isoseq_targeted/TargetedMouse_PhenotypeTAPPAS.txt"), + ontPhenotype = paste0(dirnames$rTg4510, "0_metadata/TargetedOntPhenotype.txt"), + isoPhenotype = paste0(dirnames$rTg4510, "0_metadata/TargetedIsoSeqPhenotype.txt"), # merged data - expression = paste0(dirnames$rTg4510, "G_Merged_Targeted/B_cupcake_pipeline/2_collapse/demux_fl_count.csv"), - classfiles = paste0(dirnames$rTg4510, "G_Merged_Targeted/B_cupcake_pipeline/3_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts.txt") + expression = paste0(dirnames$rTg4510, "G_Merged_Targeted/1_cupcake_collapse/demux_fl_count.csv"), + classfiles = paste0(dirnames$rTg4510, "G_Merged_Targeted/2_sqanti3/all_iso_ont_collapsed_RulesFilter_result_classification.targetgenes_counts.txt") ) input <- list() input$ontPhenotype <- read.table(input_files$ontPhenotype, sep = "\t", header = T) %>% mutate(sample = paste0("ONT_",sample)) -input$isoPhenotype <- read.table(input_files$isoPhenotype, sep = "\t", header = T) %>% mutate(sample = str_replace(sample, "FL.", "Iso.Seq_")) +input$isoPhenotype <- read.table(input_files$isoPhenotype, sep = "\t", header = T) %>% mutate(sample = paste0("Iso.Seq_", sample)) input$classfiles <- SQANTI_class_preparation(input_files$classfiles,"ns") input$expression <- read.csv(input_files$expression) %>% .[.$isoform != "0",] %>% filter(isoform %in% input$classfiles$isoform) +# equal number of genotype samples input$matchedOntPhenotype <- input$ontPhenotype %>% filter(!sample %in% c("ONT_Q20","ONT_Q18")) # datawrangle for input to run_DESeq2() diff --git a/B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/2_linear_regression_SCN.R b/B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/2_linear_regression_SCN.R new file mode 100644 index 0000000..5028a7f --- /dev/null +++ b/B_Targeted_Transcriptome/3_Differential_Analysis/B_DESeq2/2_linear_regression_SCN.R @@ -0,0 +1,89 @@ +## ---------- Script ----------------- +## +## Purpose: perform differential analysis on mouse rTg4510 ONT and Iso-Seq targeted datasets using linear regression +## Transcript level separate analysis +## Gene level separate analysis +## +## Author: Szi Kay Leung (S.K.Leung@exeter.ac.uk) +# https://hbctraining.github.io/DGE_workshop/lessons/04_DGE_DESeq2_analysis.html + + +## ---------- packages ----------------- + +suppressMessages(library("dplyr")) +suppressMessages(library("DESeq2")) +suppressMessages(library("ggplot2")) +suppressMessages(library("stringr")) +suppressMessages(library("ggrepel")) +suppressMessages(library("wesanderson")) +suppressMessages(library("cowplot")) +suppressMessages(library("pheatmap")) +suppressMessages(library("RColorBrewer")) + + +## ---------- source functions ----------------- + +LOGEN_ROOT = "/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen/" +source(paste0(LOGEN_ROOT, "/transcriptome_stats/read_sq_classification.R")) +source(paste0(LOGEN_ROOT, "differential_analysis/run_DESeq2.R")) + + +## ---------- input ----------------- + +# directory names +dirnames <- list( + rTg4510 = "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/", + output = "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/01_figures_tables/Targeted_Transcriptome" +) + +# read input files +input_files <- list( + phenotype = paste0(dirnames$rTg4510, "0_metadata/DESeq2SCNPhenotype.txt"), + + # merged data + expression = paste0(dirnames$rTg4510, "H_Sorted_Nuclei/5_cupcake/6_collapse/demux_fl_count.csv"), + classfiles = paste0(dirnames$rTg4510, "H_Sorted_Nuclei/5_cupcake/7_sqanti3/rTg4510SCN_collapsed_RulesFilter_result_classification_counts.txt") +) + + +input <- list() +input$phenotype <- read.table(input_files$phenotype, sep = "\t", header = T) %>% mutate(SampleID = word(sample,c(1),sep=fixed("_"))) +input$classfiles <- SQANTI_class_preparation(input_files$classfiles,"ns") +input$expression <- data.table::fread(input_files$expression) %>% .[.$id != "0",] %>% filter(id %in% input$classfiles$isoform) + + +## ---------- ONT: Creating DESeq2 object and analysis ----------------- +# remove outliers from phenotype +input$phenotype <- input$phenotype %>% filter(!SampleID %in% c("NeuN72", "NeuN65", "DN3")) + +input$expression <- input$expression %>% tibble::column_to_rownames("id") +input$expression <- input$expression %>% dplyr::select(input$phenotype$sample) +rownames(input$phenotype) <- input$phenotype$sample +input$phenotype <- input$phenotype %>% dplyr::select(-sample) + +if(all(colnames(input$expression) == rownames(input$phenotype))==FALSE){ + print("ERROR: rownames and colnames in expression matrix and phenotype are not in the same order") + #input$expression %>% select(rownames(input$phenotype)) +} + +#input$expression$sum <- rowSums(input$expression[,1:15]) +dds <- DESeqDataSetFromMatrix(countData = as.matrix(round(input$expression)), + colData = input$phenotype, + design = ~ group + cell) +dds <- estimateSizeFactors(dds) +dds <- dds[rowSums(counts(dds)) >= 10, ] +dds_output <- DESeq(dds, test="Wald") +res <- as.data.frame(results(dds_output)) %>% tibble::rownames_to_column("isoform") %>% arrange(padj) +stats <- as.data.frame(mcols(dds_output)) +output <- list(dds_output, res, norm, stats) +names(output) <- c("dds_Wald", "res_Wald","norm_counts", "stats_Wald") + +#### + + +MergedOutputStats <- output$stats_Wald %>% tibble::rownames_to_column(., var = "sorted_isoform") %>% + dplyr::select(sorted_isoform, cell_NeuN_vs_DN, WaldPvalue_cell_NeuN_vs_DN, WaldPvalue_group_WT_vs_TG) %>% + filter(sorted_isoform %in% mergeAll[mergeAll$dataset %in% c("Both"),"sorted_isoform"]) + +MergedOutputStats <- merge(MergedOutputStats, mergeAll, all.x = T) +write.csv(MergedOutputStats, "MergedOutputStats.csv") diff --git a/D_sortedNuclei_Transcriptome/6_QC.sh b/D_sortedNuclei_Transcriptome/6_QC.sh new file mode 100644 index 0000000..80245ab --- /dev/null +++ b/D_sortedNuclei_Transcriptome/6_QC.sh @@ -0,0 +1,12 @@ + +cd /lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/2_cutadapt_merge/DN +for i in *_merged_combined.fasta*; do + count=$(grep -c description "$i") + echo -e "$i\t$count" >> read_numbers.txt +done + +cd /lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/2_cutadapt_merge/NeuN +for i in *_merged_combined.fasta*; do + count=$(grep -c description "$i") + echo -e "$i\t$count" >> read_numbers.txt +done \ No newline at end of file diff --git a/D_sortedNuclei_Transcriptome/7_mergeBulk.sh b/D_sortedNuclei_Transcriptome/7_mergeBulk.sh new file mode 100644 index 0000000..baab55c --- /dev/null +++ b/D_sortedNuclei_Transcriptome/7_mergeBulk.sh @@ -0,0 +1,108 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=30:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address + + +##------------------------------------------------------------------------- + +# input +module load Miniconda2 +LOGEN_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/LOGen +export PATH=$PATH:${LOGEN_ROOT}/miscellaneous +export PATH=$PATH:${LOGEN_ROOT}/assist_ont_processing +SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/D_sortedNuclei_Transcriptome +source $SC_ROOT/rTg4510_snont.config +source $SC_ROOT/01_source_functions.sh + +sortedBam=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/5_cupcake/6_collapse/rTg4510SCN_mapped.filtered.sorted.bam +bulkBam=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/2_collapse/all_iso_ont_mapped.filtered.sorted.bam +sortedDir=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/5_cupcake/7_sqanti3 +bulkDir=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/3_sqanti3 + + +##------------------------------------------------------------------------- + +# merge bam files +#source activate nanopore +#cd /lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged +#samtools merge -f bulkSorted_mapped.filtered.sorted.bam ${sortedBam} ${bulkBam} + +# run isoseq3 +#source activate isoseq3 +#isoseq3 collapse bulkSorted_mapped.filtered.sorted.bam bulkSorted_collapsed.gff \ +#--min-aln-coverage 0.85 --min-aln-identity 0.95 --do-not-collapse-extra-5exons \ +#--log-level TRACE --log-file bulkSorted_collapsed.log + + +## ----- run gffcompare ---- + +#source activate sqanti2_py3 + +#cd /lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged + +# extract gtf from target genes in sorted nuclei data +#awk '{print $1}' ${sortedDir}/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_counts.txt > ${sortedDir}/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_isoforms.txt +#subset_fasta_gtf.py --gtf ${sortedDir}/rTg4510SCN_collapsed.filtered.gtf -i ${sortedDir}/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_isoforms.txt -o targetgenes_filtered + + +#sortedGtf=${sortedDir}/rTg4510SCN_collapsed.filtered_targetgenes_filtered.gtf +#bulkGtf=${bulkDir}/all_iso_ont_collapsed.filtered_counts_filtered.gtf + +#cp ${sortedGtf} . +#cp ${bulkGtf} . +#PATH="/lustre/projects/Research_Project-MRC148213/lsl693/software/gffcompare:$PATH" +#gffcompare -r ${bulkGtf} ${sortedGtf} -o bulkSorted +#gffcompare -r ${sortedGtf} ${bulkGtf} -o Sortedbulk + +#cp ${sortedDir}/*map* . +#cp ${bulkDir}/*map* . + + +##------------------------------------------------------------------------- + +# merge fasta files +source activate nanopore +outputDir=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged +cd /lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/H_Sorted_Nuclei/6_merged +#subset_fasta_gtf.py --fa ${sortedDir}/rTg4510SCN_collapsed_corrected.fasta -i ${sortedDir}/rTg4510SCN_collapsed_RulesFilter_result_classification_targetgenes_isoforms.txt -o targetgenes_filtered + +sortedFa=${sortedDir}/rTg4510SCN_collapsed_corrected_targetgenes_filtered.fa +bulkFa=${bulkDir}/all_iso_ont_collapsed.filtered_counts_filtered.fa +cat ${sortedFa} ${bulkFa} > merged.fa + +source activate isoseq3 +pbmm2 align --preset ISOSEQ --sort $GENOME_FASTA merged.fa merged_mapped.bam --log-level TRACE --log-file merged.log + +filter_alignment merged_mapped ${outputDir} + +source activate isoseq3 +isoseq3 collapse merged_mapped.filtered.bam merged_collapse.gff --min-aln-coverage 0.85 --min-aln-identity 0.95 --do-not-collapse-extra-5exons --log-level TRACE --log-file merged_collapsed.log + +mkdir original_fasta +cp ${sortedFa} . +cp ${bulkFa} . +adapt_cupcake_to_ont.py ${outputDir}/original_fasta -o merged + +source activate sqanti2_py3 +python $SQANTI3_DIR/sqanti3_qc.py merged_collapse.gff \ +$GENOME_GTF $GENOME_FASTA -t 30 --CAGE_peak $CAGE_PEAK --polyA_motif_list $POLYA \ +--genename --isoAnnotLite --skipORF --report skip + + +python $SQANTI3_DIR/sqanti3_filter.py rules merged_collapse_classification.txt \ +--faa=merged_collapse_corrected.fasta \ +--gtf=merged_collapse_corrected.gtf \ +-j=${filteringJson} --skip_report &> merged_collapse_sqanti_filter.log + +# run isoseq3 +#source activate isoseq3 +#isoseq3 collapse bulkSorted_mapped.filtered.sorted.bam bulkSorted_collapsed.gff \ +#--min-aln-coverage 0.85 --min-aln-identity 0.95 --do-not-collapse-extra-5exons \ +#--log-level TRACE --log-file bulkSorted_collapsed.log diff --git a/Paper_Figures/rTg4510_config.R b/Paper_Figures/rTg4510_config.R index fb80042..d28efa4 100644 --- a/Paper_Figures/rTg4510_config.R +++ b/Paper_Figures/rTg4510_config.R @@ -329,7 +329,6 @@ gtf$glob_iso <- rbind(gtf$glob_iso[,c("seqnames","strand","start","end","type"," ## -------------------------- protein ---------- - mouseProtein = list( cpat = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont.ORF_prob.best.tsv"), sep ="\t", header = T), cpat_best = read.table(paste0(dirnames$mprotein,"5_calledOrfs/all_iso_ont_best_orf.tsv"), sep ="\t", header = T), @@ -339,13 +338,6 @@ mouseProtein = list( t2p.collapse.refined = read.table(paste0(dirnames$mprotein,"6_refined_database/all_iso_ont_orf_refined_collapsed.tsv")) ) -humanProtein = list( - cpat = read.table(paste0(dirnames$protein,"5_calledOrfs/all_iso_ont_best_orf.tsv"), sep ="\t", header = T), - t2p.collapse = read.table(paste0(dirnames$protein,"6_refined_database/all_iso_ont_orf_refined.tsv"), sep = "\t", header = T) -) - -annopResTran <- readRDS(paste0(dirnames$targ_output, "/DESeq2ProteinLevel.RDS")) - class.files$protein <- read.table(paste0(dirnames$mprotein,"7_classified_protein/all_iso_ont.sqanti_protein_classification.tsv"), sep = "\t", header = T) nmd <- read.table(paste0(dirnames$mprotein, "7_classified_protein/all_iso_ont.classification_filtered.tsv"), sep = "\t", header = T) idx <- match(nmd$pb,class.files$ptarg_filtered$base_acc) @@ -354,28 +346,4 @@ nmd <- transform(nmd, corrected_acc = ifelse(!is.na(idx), as.character(class.fil ## ------ raw reads ----- rawReadsWhole <- read.table(paste0(dirnames$utils,"numReadsWhole.txt"), sep = "\t", header = T) -rawReadsTargeted <- read.table(paste0(dirnames$utils,"numReadsTargeted.txt"), sep = "\t", header = T) - -## --------------------------- Tappas ---- -# TAPPAS (Differential Analysis) -#tappas_dir <- list( -# glob_iso = paste0(dirnames$glob_tabroot, "/IsoSeq_Expression"), -# glob_rna = paste0(dirnames$glob_tabroot, "/RNASeq_Expression"), -# targ_iso = paste0(dirnames$targ_iso_root, "/thesis_dump/DiffAnalysis_noRNASEQ/TAPPAS_OUTPUT/IsoSeq_Expression"), -# targ_ont = paste0(dirnames$targ_ont_root, "/thesis_dump/TALON/TAPPAS_OUTPUT") -#) - - - -# Output from Tappas_DEA.R -#tappassiggene <- list( -# glob = read_dea_files(paste0(dirnames$glob_tabroot,"/DifferentialGeneExpression_Analysis.xlsx")), -# targ_iso = read_dea_files(paste0(dirnames$targ_iso_root,"/thesis_dump/DiffAnalysis_noRNASEQ/TAPPAS_OUTPUT/DifferentialGeneExpression_Analysis.xlsx")), -# targ_ont = read_dea_files(paste0(dirnames$targ_ont_root,"/thesis_dump/TALON/TAPPAS_OUTPUT/DifferentialGeneExpression_Analysis.xlsx")) -#) - -#tappassigtrans <- list( -# glob = read_dea_files(paste0(dirnames$glob_tabroot,"/DifferentialTransExpression_Analysis.xlsx")), -# targ_iso = read_dea_files(paste0(dirnames$targ_iso_root,"/thesis_dump/DiffAnalysis_noRNASEQ/TAPPAS_OUTPUT/DifferentialTransExpression_Analysis.xlsx")), -# targ_ont = read_dea_files(paste0(dirnames$targ_ont_root,"/thesis_dump/TALON/TAPPAS_OUTPUT/DifferentialTransExpression_Analysis.xlsx")) -#) \ No newline at end of file +rawReadsTargeted <- read.table(paste0(dirnames$utils,"numReadsTargeted.txt"), sep = "\t", header = T) \ No newline at end of file From a612eec3b5fe102c7b1b262b815276a5a425a920 Mon Sep 17 00:00:00 2001 From: sl693 Date: Tue, 23 Apr 2024 18:18:17 +0100 Subject: [PATCH 24/29] Revisions 2024 - isoform diversity across AD associated and non-AD associated genes - Kumar dataset comparison --- Reviews/11_Review2024.R | 179 ++++++++++++++++++++++++++++++ Reviews/12_Kumar2024Comparison.sh | 71 ++++++++++++ Reviews/12b_Kumar2024Comparison.R | 33 ++++++ 3 files changed, 283 insertions(+) create mode 100644 Reviews/11_Review2024.R create mode 100644 Reviews/12_Kumar2024Comparison.sh create mode 100644 Reviews/12b_Kumar2024Comparison.R diff --git a/Reviews/11_Review2024.R b/Reviews/11_Review2024.R new file mode 100644 index 0000000..0877921 --- /dev/null +++ b/Reviews/11_Review2024.R @@ -0,0 +1,179 @@ + +## ---------- AD gene list ----------------- + +# Most recent human AD GWAS 2022 +# convert human genes to mouse homologues +ADGWAS <- read.table(paste0(dirnames$glob_metadata,"/ADGWASBellenguez.txt"), col.names = c("human")) +mouse2humanconversion <- read.csv(paste0(dirnames$utils, "mousehumangeneconversion.csv")) +ADGWAS <- merge(ADGWAS, mouse2humanconversion, by = "human") + +# Full list of AD genes including Target Gene List +ADRelatedGenes <- c(as.character(ADGWAS$mouse), TargetGene) + +# List of housekeeping genes from Review +housekeepingGenes = c("Las1l","Rrp1","Gusb","Polr2b","Cyc1","Tbp","Xpnpep1","Gapdh","Actb","Rpl13a","Sdha") + + +## ---------- functions ----------------- + +expressionADGene <- function(){ + + meanADGeneExpression <- GlobalDESeq$resGeneAnno$wald$norm_counts_all %>% + filter(associated_gene %in% ADRelatedGenes) %>% + group_by(associated_gene) %>% + dplyr::summarise(mean = mean(normalised_counts)) + + meanOtherADGeneExpression <- GlobalDESeq$resGeneAnno$wald$norm_counts_all %>% + group_by(associated_gene) %>% + dplyr::summarise(mean = mean(normalised_counts)) %>% + filter(min(meanADGeneExpression$mean) < mean, mean < max(meanADGeneExpression$mean)) + + return(meanOtherADGeneExpression) +} + +tallyADgene <- function(phenotype, similarLevel = NULL, all = TRUE, texpression = FALSE){ + + geneAnnotation <- read.table(paste0(dirnames$utils,"gencode.vM22.annotation.geneannotation.txt"), header = T) + proteinCodingGenes <- as.character(geneAnnotation[geneAnnotation$Class == "protein_coding", "GeneSymbol"]) + + if(isTRUE(texpression)){ + message("Transcript expression") + if(isTRUE(all)){ + dat <- group_class.files.diff[group_class.files.diff$Dataset %in% c(phenotype, "Both"),] + }else{ + dat <- group_class.files.diff[group_class.files.diff$Dataset == phenotype,] + } + + }else{ + # isoform diversity + if(isTRUE(all)){ + dat <- class.files$glob_iso %>% + filter(isoform %in% group_class.files.diff[group_class.files.diff$Dataset %in% c(phenotype, "Both"),"isoform"]) + }else{ + dat <- class.files$glob_iso %>% + filter(isoform %in% group_class.files.diff[group_class.files.diff$Dataset == phenotype,"isoform"]) + } + } + + # keep only protein coding genes + dat <- dat %>% filter(associated_gene %in% proteinCodingGenes) + + + if(!is.null(similarLevel)){ + meanOtherADGeneExpression <- expressionADGene() + dat <- dat %>% filter(associated_gene %in% c(as.character(ADRelatedGenes), as.character(meanOtherADGeneExpression$associated_gene))) + } + + if(isFALSE(texpression)){ + dat <- dat %>% group_by(associated_gene) %>% tally() + } + + dat <- dat %>% + mutate(ADRelated = ifelse(associated_gene %in% c(as.character(ADRelatedGenes)),"AD","Non AD"), + Dataset = phenotype) + + return(dat) + +} + + +plotIsoformDiversity <- function(common = TRUE, gexpression = FALSE, texpression = FALSE){ + + if(isTRUE(common)){ + axistitle <- "all" + }else{ + axistitle <- "unique" + } + + # tally the number of unique isoforms in WT and TG mice + isoDiversity_WT <- tallyADgene("WT", similarLevel = TRUE, all = common, texpression = FALSE) + isoDiversity_TG <- tallyADgene("TG", similarLevel = TRUE, all = common, texpression = FALSE) + + + if(isTRUE(texpression)){ + message("Plotting transcript expression only") + + isoExp_WT <- tallyADgene("WT", similarLevel = TRUE, all = common, texpression=TRUE) %>% mutate(FL = WTFL) + isoExp_TG <- tallyADgene("TG", similarLevel = TRUE, all = common, texpression=TRUE) %>% mutate(FL = TGFL) + + # plot distribution + p <- rbind(isoExp_TG[,c("associated_gene","FL", "Dataset", "ADRelated")], + isoExp_WT[,c("associated_gene","FL", "Dataset", "ADRelated")]) %>% + ggplot(., aes(x = FL, fill = Dataset)) + geom_density(alpha = 0.2) + + labs(x = paste0("FL read count of ", axistitle, " isoforms"), y = "Density") + + theme_classic() + + # stats + resAD <- rbind(isoExp_TG[,c("associated_gene","FL", "Dataset", "ADRelated")], + isoExp_WT[,c("associated_gene","FL", "Dataset", "ADRelated")]) %>% + filter(ADRelated == "AD") %>% + t.test(FL ~ Dataset, data = .) + + message("AD only") + print(resAD) + + }else if(isTRUE(gexpression)){ + + meanOtherADGeneExpression <- expressionADGene() %>% merge(.,rbind(isoDiversity_TG, isoDiversity_WT),by = "associated_gene") + meanOtherADGeneExpression <- meanOtherADGeneExpression %>% mutate(ADRelated = ifelse(associated_gene %in% housekeepingGenes, "HouseKeeping", ADRelated)) + + p <- ggplot(meanOtherADGeneExpression, aes(y = mean, x = n, colour = Dataset)) + geom_point() + + scale_y_continuous(trans='log10') + + facet_grid(ADRelated ~ .) + + labs(x = paste0("Number of ", axistitle, " isoforms"), y = "Mean gene expression") + + message("AD only") + geneExpressionIsoAD <- meanOtherADGeneExpression[meanOtherADGeneExpression$ADRelated == "AD",] + resAD <- cor.test(geneExpressionIsoAD$mean, geneExpressionIsoAD$n) + print(resAD) + + message("HK only") + geneExpressionIsoHK <- meanOtherADGeneExpression[meanOtherADGeneExpression$ADRelated == "HouseKeeping",] + resHK <- cor.test(geneExpressionIsoHK$mean, geneExpressionIsoHK$n) + print(resHK) + + message("Other only") + geneExpressionIsoHK <- meanOtherADGeneExpression[meanOtherADGeneExpression$ADRelated == "Non AD",] + resHK <- cor.test(geneExpressionIsoHK$mean, geneExpressionIsoHK$n) + print(resHK) + + }else{ + + # plot distribution + p <- rbind(isoDiversity_TG, isoDiversity_WT) %>% + ggplot(., aes(x = n, fill = Dataset)) + geom_density(alpha = 0.2) + + labs(x = paste0("Number of ", axistitle, " isoforms"), y = "Density") + + theme_classic() + + # t.test + print(rbind(isoDiversity_TG, isoDiversity_WT) %>% filter(ADRelated == "AD") %>% t.test(n ~ Dataset, data = .)) + } + + p <- p + + facet_grid(ADRelated~.) + + scale_x_continuous(trans='log10') + + scale_fill_manual(values = c("red",label_colour("WT")), name = NULL) + + scale_colour_manual(values = c("red",label_colour("WT")), name = NULL) + + theme(strip.background = element_blank(), legend.position = c(0.9,0.9)) + + return(p) +} + + +Allplots <- list( + + ## ---------- isoform diversity in AD-associated genes ----------------- + pTDiversityAll = plotIsoformDiversity(common = TRUE), + pTDiversityUnique = plotIsoformDiversity(common = FALSE), + + ## ---------- isoform expression in AD-associated genes ----------------- + pTExpressionAll = plotIsoformDiversity(common = TRUE, texpression = TRUE), + pTExpressionUnique = plotIsoformDiversity(common = FALSE, texpression = TRUE), + + ## ---------- gene expression of AD-associated genes ----------------- + pGExpressionAll = plotIsoformDiversity(common = TRUE, gexpression = TRUE), + pGExpressionUnique = plotIsoformDiversity(common = FALSE, gexpression = TRUE) + +) + +plot_grid(plotlist = Allplots, ncol = 2, labels = c("A","B","C","D","E","F"), rel_heights = c(0.3,0.3,0.4)) diff --git a/Reviews/12_Kumar2024Comparison.sh b/Reviews/12_Kumar2024Comparison.sh new file mode 100644 index 0000000..b0b39c2 --- /dev/null +++ b/Reviews/12_Kumar2024Comparison.sh @@ -0,0 +1,71 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=2:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=12_Kumar2024Comparison.o +#SBATCH --error=12_Kumar2024Comparison.o + +# 23/04/2024: Run Kumar dataset through ONT pipeline for downstream comparison + +##------------------------------------------------------------------------- + +# https://academic.oup.com/nar/article/52/6/2865/7627472#supplementary-data +# https://figshare.com/articles/dataset/Long_read_oxford_nanopore_technology_mouse_brain_aging_datasets/25670262 + +export K2024=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_otherStudies/Kumar2024 +export REFERENCE=/lustre/projects/Research_Project-MRC148213/lsl693/references +export GENOME_FASTA=$REFERENCE/mouse/mm10.fa +export GENOME_GTF=$REFERENCE/annotation/gencode.vM22.annotation.gtf +export SOFTDIR=/lustre/projects/Research_Project-MRC148213/lsl693/software +export CUPCAKE=$SOFTDIR/cDNA_Cupcake +export ANNOTATION=$CUPCAKE/annotation +export SEQUENCE=$CUPCAKE/sequence +export PYTHONPATH=$PYTHONPATH:$SEQUENCE +export SQANTI3_DIR=$SOFTDIR/SQANTI3 +export SQANTIFIL_JSON=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/0_utils/filter_default_reducecoverage.json +export NAME=Kumar2024 + +module load Miniconda2/4.3.21 +source activate isoseq3 + + +##------------------------------------------------------------------------- +# already aligned, convert to fasta +#cd ${K2024}/aligned +#for i in ${K2024}/aligned/*bam*; do +# echo $i +# sample=$(basename "$i" | cut -d "." -f 1 ) +# echo $sample +# samtools bam2fq $i| seqtk seq -A > $sample.fa +#done + +#aligned=$(ls ${K2024}/aligned/*.fa) +#cat ${aligned} > merged.fa + + +##------------------------------------------------------------------------- + +# isoseq collapse +cd ${K2024}/cupcake +#pbmm2 align --preset ISOSEQ --sort ${GENOME_FASTA} ${K2024}/aligned/merged.fa ${NAME}_mapped.bam --unmapped --log-level TRACE --log-file ${NAME}_mapped.log +#isoseq3 collapse ${NAME}_mapped.bam ${NAME}.gff --do-not-collapse-extra-5exons --log-level TRACE --log-file ${NAME}"_collapsed.log" + +# isoseq sqanti3 +source activate sqanti2_py3 +python $SQANTI3_DIR/sqanti3_qc.py -t 30 ${NAME}.gff $GENOME_GTF $GENOME_FASTA --genename --skipORF --report skip &> merged.sqanti.qc.log +python $SQANTI3_DIR/sqanti3_filter.py rules ${NAME}"_classification.txt" --faa=${NAME}"_corrected.fasta" --gtf=${NAME}"_corrected.gtf" \ + -j=${SQANTIFIL_JSON} --skip_report &> ${NAME}.sqanti.filter.log + +rTg4510_gtf=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/3_sqanti3/all_iso_ont_collapsed.filtered_counts_filtered.gtf +cd ${K2024}/comparison +cp ${rTg4510_gtf} . +cp ${K2024}/cupcake/Kumar2024.filtered.gtf . +PATH="/lustre/projects/Research_Project-MRC148213/lsl693/software/gffcompare:$PATH" +gffcompare -r all_iso_ont_collapsed.filtered_counts_filtered.gtf Kumar2024.filtered.gtf -o rTg4510Kumar +gffcompare -r Kumar2024.filtered.gtf all_iso_ont_collapsed.filtered_counts_filtered.gtf -o KumarrTg4510 diff --git a/Reviews/12b_Kumar2024Comparison.R b/Reviews/12b_Kumar2024Comparison.R new file mode 100644 index 0000000..53d0fa4 --- /dev/null +++ b/Reviews/12b_Kumar2024Comparison.R @@ -0,0 +1,33 @@ +#!/usr/bin/env Rscript +## ----------Script----------------- +## +## Purpose: Comparison of Kumar2024 dataset +## +## Author: Szi Kay Leung (S.K.Leung@exeter.ac.uk) +## +## --------------------------- + +dirnames$kumar2024 <- "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_otherStudies/Kumar2024/" + +## ---------- classification file ----------------- + +# sqanti classification file from kumar +class.names.files$kumar <- paste0(dirnames$kumar2024, "/cupcake/Kumar2024_RulesFilter_result_classification.txt") +class.files$kumar <- SQANTI_class_preparation(class.names.files$kumar,"nstandard") +class.files$kumar_targeted <- class.files$kumar %>% filter(associated_gene %in% TargetGene) +message("number of transcripts in Kumar dataset:", nrow(class.files$kumar_targeted)) + + +## ---------- gffCompare output ----------------- + +# rTg4510 as reference +rTg4510Ref <- read.table(paste0(dirnames$kumar2024,"/comparison/rTg4510Kumar.Kumar2024.filtered.gtf.tmap"), header = T) +message("Number of detected transcripts: ", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$kumar_targeted$isoform,])) +message("Number of exact match transcripts:", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$kumar_targeted$isoform & rTg4510Ref$class_code == "=",])) +message("Number of partial transcripts:", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$kumar_targeted$isoform & rTg4510Ref$class_code == "c",])) + + +# Kumar dataset as reference +KumarRef <- read.table(paste0(dirnames$kumar2024, "comparison/KumarrTg4510.all_iso_ont_collapsed.filtered_counts_filtered.gtf.tmap"), header = T) +detected <- KumarRef[KumarRef$ref_id %in% class.files$kumar_targeted$isoform & tmap$class_code == "=", "qry_id"] +(nrow(class.files$targ_filtered) - length(detected))/nrow(class.files$targ_filtered) From da0b20870c6cb79ddd547dc56e9973f948b503e9 Mon Sep 17 00:00:00 2001 From: sl693 Date: Wed, 24 Apr 2024 15:56:44 +0100 Subject: [PATCH 25/29] Comparison with Jones2024 dataset --- Reviews/13_Jones2024Comparison.sh | 74 +++++++++++++++++++++++++++++++ Reviews/13b_Jones2024Comparison.R | 50 +++++++++++++++++++++ 2 files changed, 124 insertions(+) create mode 100644 Reviews/13_Jones2024Comparison.sh create mode 100644 Reviews/13b_Jones2024Comparison.R diff --git a/Reviews/13_Jones2024Comparison.sh b/Reviews/13_Jones2024Comparison.sh new file mode 100644 index 0000000..198ff1a --- /dev/null +++ b/Reviews/13_Jones2024Comparison.sh @@ -0,0 +1,74 @@ +#!/bin/bash +#SBATCH --export=ALL # export all environment variables to the batch job +#SBATCH -D . # set working directory to . +#SBATCH -p mrcq # submit to the parallel queue +#SBATCH --time=2:00:00 # maximum walltime for the job +#SBATCH -A Research_Project-MRC148213 # research project to submit under +#SBATCH --nodes=1 # specify number of nodes +#SBATCH --ntasks-per-node=16 # specify number of processors per node +#SBATCH --mail-type=END # send email at job completion +#SBATCH --mail-user=sl693@exeter.ac.uk # email address +#SBATCH --output=13_Jones2024Comparison.o +#SBATCH --error=13_Jones2024Comparison.e + +# 23/04/2024: Run Hones dataset through ONT pipeline for downstream comparison + +##------------------------------------------------------------------------- + +# https://academic.oup.com/nar/article/52/6/2865/7627472#supplementary-data +# https://figshare.com/articles/dataset/Long_read_oxford_nanopore_technology_mouse_brain_aging_datasets/25670262 + +export J2024=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_otherStudies/Jones2024 +export REFERENCE=/lustre/projects/Research_Project-MRC148213/lsl693/references +export GENOME_FASTA=$REFERENCE/mouse/mm10.fa +export GENOME_GTF=$REFERENCE/annotation/gencode.vM22.annotation.gtf +export SOFTDIR=/lustre/projects/Research_Project-MRC148213/lsl693/software +export CUPCAKE=$SOFTDIR/cDNA_Cupcake +export ANNOTATION=$CUPCAKE/annotation +export SEQUENCE=$CUPCAKE/sequence +export PYTHONPATH=$PYTHONPATH:$SEQUENCE +export SQANTI3_DIR=$SOFTDIR/SQANTI3 +export SQANTIFIL_JSON=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/0_utils/filter_default_reducecoverage.json +export NAME=Jones2024 + +module load Miniconda2/4.3.21 + +##------------------------------------------------------------------------- +# already aligned, convert to fasta +#cd ${K2024}/aligned +#for i in ${K2024}/aligned/*bam*; do +# echo $i +# sample=$(basename "$i" | cut -d "." -f 1 ) +# echo $sample +# samtools bam2fq $i| seqtk seq -A > $sample.fa +#done + +#aligned=$(ls ${K2024}/aligned/*.fa) +#cat ${aligned} > merged.fa + +##------------------------------------------------------------------------- + +# run sqanti on bambu generated files +# remove unnecessary chromsome "GL456210.1" error when running SQANTI +grep chr ${J2024}/data_minus_bam/nextflow/bambu/extended_annotations.gtf > ${J2024}/data_minus_bam/nextflow/bambu/chr_annotations.gtf + +source activate sqanti2_py3 +cd ${J2024}/sqanti +#python $SQANTI3_DIR/sqanti3_qc.py -t 30 ${J2024}/data_minus_bam/nextflow/bambu/chr_annotations.gtf $GENOME_GTF $GENOME_FASTA --genename --skipORF --report skip &> merged.sqanti.qc.log +NAME=chr_annotations +python $SQANTI3_DIR/sqanti3_filter.py rules ${NAME}"_classification.txt" --faa=${NAME}"_corrected.fasta" --gtf=${NAME}"_corrected.gtf" \ + -j=${SQANTIFIL_JSON} --skip_report &> ${NAME}.sqanti.filter.log + +##------------------------------------------------------------------------- + +rTg4510_gtf=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/3_sqanti3/all_iso_ont_collapsed.filtered_counts_filtered.gtf +cd ${J2024}/comparison +cp ${rTg4510_gtf} . +cp ${J2024}/sqanti/chr_annotations.filtered.gtf . +PATH="/lustre/projects/Research_Project-MRC148213/lsl693/software/gffcompare:$PATH" +gffcompare -r all_iso_ont_collapsed.filtered_counts_filtered.gtf chr_annotations.filtered.gtf -o rTg4510Jones +gffcompare -r chr_annotations.filtered.gtf all_iso_ont_collapsed.filtered_counts_filtered.gtf -o JonesrTg4510 + +cp ${J2024}/sqanti/chr_annotations_corrected.gtf . +gffcompare -r all_iso_ont_collapsed.filtered_counts_filtered.gtf chr_annotations_corrected.gtf -o rTg4510Jones +gffcompare -r chr_annotations_corrected.gtf all_iso_ont_collapsed.filtered_counts_filtered.gtf -o JonesrTg4510 diff --git a/Reviews/13b_Jones2024Comparison.R b/Reviews/13b_Jones2024Comparison.R new file mode 100644 index 0000000..4acf9ad --- /dev/null +++ b/Reviews/13b_Jones2024Comparison.R @@ -0,0 +1,50 @@ +#!/usr/bin/env Rscript +## ----------Script----------------- +## +## Purpose: Comparison of jones2024 dataset +## +## Author: Szi Kay Leung (S.K.Leung@exeter.ac.uk) +## +## --------------------------- + +dirnames$jones2024 <- "/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/0_otherStudies/Jones2024/" + +## ---------- classification file ----------------- + +# sqanti classification file from jones +class.names.files$jones <- paste0(dirnames$jones2024, "sqanti/chr_annotations_classification.txt") +class.files$jones <- read.table(class.names.files$jones, as.is = T, sep = "\t", header = T) +class.files$jones_targeted <- class.files$jones %>% filter(associated_gene %in% TargetGene) +message("number of transcripts in jones dataset:", nrow(class.files$jones_targeted)) + +class.names.files$jonesfiltered <- paste0(dirnames$jones2024, "sqanti/chr_annotations_RulesFilter_result_classification.txt") +class.files$jonesfiltered <- SQANTI_class_preparation(class.names.files$jonesfiltered,"nstandard") +class.files$jonesfiltered_targeted <- class.files$jonesfiltered %>% filter(associated_gene %in% TargetGene) +message("number of transcripts in jones dataset:", nrow(class.files$jonesfiltered_targeted)) + +# non-canonical junctions +filteredReasons <- read.table(paste0(dirnames$jones2024, "sqanti/chr_annotations_filtering_reasons.txt"), sep = "\t", as.is = T, header = T) +filteredReasons %>% filter(isoform %in% class.files$jones_targeted$isoform) + +phenotype$jones <- read.csv(paste0(dirnames$jones2024,"comparison/sample_collection_metadata.csv")) +tCounts <- read.table(paste0(dirnames$jones2024, "data_minus_bam/nextflow/bambu/counts_transcript.txt"), header = T) +tCountsMelt <- tCounts %>% filter(TXNAME %in% class.files$jones_targeted$isoform) %>% reshape2::melt() %>% + mutate(sample_id = word(variable,c(1),sep=fixed("_"))) +tCountsMelt <- merge(tCountsMelt,phenotype$jones[,c("sample_id","mouse_id","sex","tissue")], by = "sample_id") +tCountsMelt <- merge(tCountsMelt, class.files$jones_targeted[,c("isoform","associated_gene","associated_transcript","structural_category")], by.x = "TXNAME", by.y = "isoform") +ggplot(tCountsMelt, aes(x = TXNAME, y = value, colour = sex)) + geom_boxplot() + facet_grid(tissue~associated_gene, scales = "free", space = "free") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) + + + +## ---------- gffCompare output ----------------- + +# rTg4510 as reference +rTg4510Ref <- read.table(paste0(dirnames$jones2024,"comparison/rTg4510Jones.chr_annotations_corrected.gtf.tmap"), header = T) +message("Number of detected transcripts: ", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$jones_targeted$isoform,])) +table(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$jones_targeted$isoform,"class_code"]) + +# jones dataset as reference +jonesRef <- read.table(paste0(dirnames$jones2024, "comparison/JonesrTg4510.all_iso_ont_collapsed.filtered_counts_filtered.gtf.tmap"), header = T) +detected <- table(jonesRef[jonesRef$ref_id %in% class.files$jones_targeted$isoform, "class_code"]) + +rTg4510Ref[rTg4510Ref$qry_id %in% c(as.character(unique(tCountsMelt[tCountsMelt$value > 10,"TXNAME"]))),] From f97dce391b609f0b64f1bcf59e21b98bdd0701c1 Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 25 Apr 2024 11:24:33 +0100 Subject: [PATCH 26/29] Review with Jones and Kumar datset cont --- Reviews/12_Kumar2024Comparison.sh | 13 ++++++++- Reviews/12b_Kumar2024Comparison.R | 29 +++++++++++++++++--- Reviews/13_Jones2024Comparison.sh | 12 ++++++++- Reviews/13b_Jones2024Comparison.R | 44 ++++++++++++++++++++++++++----- 4 files changed, 86 insertions(+), 12 deletions(-) diff --git a/Reviews/12_Kumar2024Comparison.sh b/Reviews/12_Kumar2024Comparison.sh index b0b39c2..ea95fa5 100644 --- a/Reviews/12_Kumar2024Comparison.sh +++ b/Reviews/12_Kumar2024Comparison.sh @@ -63,9 +63,20 @@ python $SQANTI3_DIR/sqanti3_filter.py rules ${NAME}"_classification.txt" --faa=$ -j=${SQANTIFIL_JSON} --skip_report &> ${NAME}.sqanti.filter.log rTg4510_gtf=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/3_sqanti3/all_iso_ont_collapsed.filtered_counts_filtered.gtf -cd ${K2024}/comparison +cd ${K2024}/comparison/targeted cp ${rTg4510_gtf} . cp ${K2024}/cupcake/Kumar2024.filtered.gtf . PATH="/lustre/projects/Research_Project-MRC148213/lsl693/software/gffcompare:$PATH" gffcompare -r all_iso_ont_collapsed.filtered_counts_filtered.gtf Kumar2024.filtered.gtf -o rTg4510Kumar gffcompare -r Kumar2024.filtered.gtf all_iso_ont_collapsed.filtered_counts_filtered.gtf -o KumarrTg4510 + +# whole dataset +rTg4510_gtf=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/A_IsoSeq_Whole/2_post_isoseq3/9_sqanti3/WholeIsoSeq.collapsed.filtered.gtf +cd ${K2024}/comparison/whole +cp ${rTg4510_gtf} . +cp ${K2024}/cupcake/Kumar2024.filtered.gtf . +PATH="/lustre/projects/Research_Project-MRC148213/lsl693/software/gffcompare:$PATH" +gffcompare -r WholeIsoSeq.collapsed.filtered.gtf Kumar2024.filtered.gtf -o rTg4510Kumar +gffcompare -r Kumar2024.filtered.gtf WholeIsoSeq.collapsed.filtered.gtf -o KumarrTg4510 + + diff --git a/Reviews/12b_Kumar2024Comparison.R b/Reviews/12b_Kumar2024Comparison.R index 53d0fa4..f592720 100644 --- a/Reviews/12b_Kumar2024Comparison.R +++ b/Reviews/12b_Kumar2024Comparison.R @@ -18,16 +18,39 @@ class.files$kumar_targeted <- class.files$kumar %>% filter(associated_gene %in% message("number of transcripts in Kumar dataset:", nrow(class.files$kumar_targeted)) -## ---------- gffCompare output ----------------- +## ---------- gffCompare output - Targeted dataset ----------------- # rTg4510 as reference -rTg4510Ref <- read.table(paste0(dirnames$kumar2024,"/comparison/rTg4510Kumar.Kumar2024.filtered.gtf.tmap"), header = T) +rTg4510Ref <- read.table(paste0(dirnames$kumar2024,"/comparison/targeted/rTg4510Kumar.Kumar2024.filtered.gtf.tmap"), header = T) message("Number of detected transcripts: ", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$kumar_targeted$isoform,])) message("Number of exact match transcripts:", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$kumar_targeted$isoform & rTg4510Ref$class_code == "=",])) message("Number of partial transcripts:", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$kumar_targeted$isoform & rTg4510Ref$class_code == "c",])) # Kumar dataset as reference -KumarRef <- read.table(paste0(dirnames$kumar2024, "comparison/KumarrTg4510.all_iso_ont_collapsed.filtered_counts_filtered.gtf.tmap"), header = T) +KumarRef <- read.table(paste0(dirnames$kumar2024, "comparison/targeted/KumarrTg4510.all_iso_ont_collapsed.filtered_counts_filtered.gtf.tmap"), header = T) detected <- KumarRef[KumarRef$ref_id %in% class.files$kumar_targeted$isoform & tmap$class_code == "=", "qry_id"] (nrow(class.files$targ_filtered) - length(detected))/nrow(class.files$targ_filtered) + + +## ---------- gffCompare output - Whole dataset ----------------- + +# rTg4510 as reference +rTg4510Ref <- read.table(paste0(dirnames$kumar2024,"/comparison/whole/rTg4510Kumar.Kumar2024.filtered.gtf.tmap"), header = T) +message("Number of exact match or partial transcripts:", length(unique(rTg4510Ref[rTg4510Ref$class_code %in% c("=","c"),"qry_id"]))) +3659/nrow(class.files$glob_iso) * 100 + + +# Kumar dataset as reference +KumarRef <- read.table(paste0(dirnames$kumar2024, "comparison/whole/KumarrTg4510.WholeIsoSeq.collapsed.filtered.gtf.tmap"), header = T) +length(unique(KumarRef$qry_id)) == nrow(class.files$glob_iso) +message("Number of exact match or partial transcripts:", length(unique(KumarRef[KumarRef$class_code %in% c("=","c"),"qry_id"]))) +Detected <- KumarRef[KumarRef$class_code %in% c("=","c"),"qry_id"] +class.files$glob_iso <- class.files$glob_iso %>% mutate(Kumar = factor(ifelse(isoform %in% Detected,TRUE,FALSE), levels = c(TRUE,FALSE))) +class.files$glob_iso$meanFL <- class.files$glob_iso %>% select(contains("FL.")) %>% apply(., 1, mean) + +p1 <- ggplot(class.files$glob_iso, aes(x = Kumar, y = log10(meanFL))) + geom_boxplot() + + theme_classic() + labs(y = "log10 mean FL reads", x = "Detected in Kumar2024 dataset") + +t.test(meanFL ~ Kumar, data = class.files$glob_iso) +nrow(class.files$kumar) diff --git a/Reviews/13_Jones2024Comparison.sh b/Reviews/13_Jones2024Comparison.sh index 198ff1a..b1f0184 100644 --- a/Reviews/13_Jones2024Comparison.sh +++ b/Reviews/13_Jones2024Comparison.sh @@ -62,7 +62,7 @@ python $SQANTI3_DIR/sqanti3_filter.py rules ${NAME}"_classification.txt" --faa=$ ##------------------------------------------------------------------------- rTg4510_gtf=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/G_Merged_Targeted/B_cupcake_pipeline/3_sqanti3/all_iso_ont_collapsed.filtered_counts_filtered.gtf -cd ${J2024}/comparison +cd ${J2024}/comparison/targeted cp ${rTg4510_gtf} . cp ${J2024}/sqanti/chr_annotations.filtered.gtf . PATH="/lustre/projects/Research_Project-MRC148213/lsl693/software/gffcompare:$PATH" @@ -72,3 +72,13 @@ gffcompare -r chr_annotations.filtered.gtf all_iso_ont_collapsed.filtered_counts cp ${J2024}/sqanti/chr_annotations_corrected.gtf . gffcompare -r all_iso_ont_collapsed.filtered_counts_filtered.gtf chr_annotations_corrected.gtf -o rTg4510Jones gffcompare -r chr_annotations_corrected.gtf all_iso_ont_collapsed.filtered_counts_filtered.gtf -o JonesrTg4510 + +# whole dataset +rTg4510_gtf=/lustre/projects/Research_Project-MRC148213/lsl693/rTg4510/A_IsoSeq_Whole/2_post_isoseq3/9_sqanti3/WholeIsoSeq.collapsed.filtered.gtf +cd ${J2024}/comparison/whole +cp ${rTg4510_gtf} . +cp ${J2024}/sqanti/chr_annotations.filtered.gtf . +PATH="/lustre/projects/Research_Project-MRC148213/lsl693/software/gffcompare:$PATH" +gffcompare -r WholeIsoSeq.collapsed.filtered.gtf chr_annotations.filtered.gtf -o rTg4510Jones +gffcompare -r chr_annotations.filtered.gtf WholeIsoSeq.collapsed.filtered.gtf -o JonesrTg4510 + diff --git a/Reviews/13b_Jones2024Comparison.R b/Reviews/13b_Jones2024Comparison.R index 4acf9ad..8af68e9 100644 --- a/Reviews/13b_Jones2024Comparison.R +++ b/Reviews/13b_Jones2024Comparison.R @@ -20,7 +20,8 @@ message("number of transcripts in jones dataset:", nrow(class.files$jones_target class.names.files$jonesfiltered <- paste0(dirnames$jones2024, "sqanti/chr_annotations_RulesFilter_result_classification.txt") class.files$jonesfiltered <- SQANTI_class_preparation(class.names.files$jonesfiltered,"nstandard") class.files$jonesfiltered_targeted <- class.files$jonesfiltered %>% filter(associated_gene %in% TargetGene) -message("number of transcripts in jones dataset:", nrow(class.files$jonesfiltered_targeted)) +message("number of transcripts in jones dataset target genes:", nrow(class.files$jonesfiltered_targeted)) +message("number of transcripts in jones dataset:", nrow(class.files$jonesfiltered)) # non-canonical junctions filteredReasons <- read.table(paste0(dirnames$jones2024, "sqanti/chr_annotations_filtering_reasons.txt"), sep = "\t", as.is = T, header = T) @@ -32,19 +33,48 @@ tCountsMelt <- tCounts %>% filter(TXNAME %in% class.files$jones_targeted$isoform mutate(sample_id = word(variable,c(1),sep=fixed("_"))) tCountsMelt <- merge(tCountsMelt,phenotype$jones[,c("sample_id","mouse_id","sex","tissue")], by = "sample_id") tCountsMelt <- merge(tCountsMelt, class.files$jones_targeted[,c("isoform","associated_gene","associated_transcript","structural_category")], by.x = "TXNAME", by.y = "isoform") -ggplot(tCountsMelt, aes(x = TXNAME, y = value, colour = sex)) + geom_boxplot() + facet_grid(tissue~associated_gene, scales = "free", space = "free") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) +p3 <- ggplot(tCountsMelt, aes(x = TXNAME, y = value, colour = sex)) + + geom_boxplot() + + facet_grid(tissue~associated_gene, scales = "free", space = "free") + theme_bw() + + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) + + theme(legend.key = element_blank(), strip.background = element_rect(colour="white", fill="white")) + + labs(x = "Transcript", y = "Counts") + + scale_colour_discrete(name = "Sex") -## ---------- gffCompare output ----------------- +## ---------- gffCompare output - Targeted ----------------- # rTg4510 as reference -rTg4510Ref <- read.table(paste0(dirnames$jones2024,"comparison/rTg4510Jones.chr_annotations_corrected.gtf.tmap"), header = T) +rTg4510Ref <- read.table(paste0(dirnames$jones2024,"comparison/targeted/rTg4510Jones.chr_annotations_corrected.gtf.tmap"), header = T) message("Number of detected transcripts: ", nrow(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$jones_targeted$isoform,])) table(rTg4510Ref[rTg4510Ref$qry_id %in% class.files$jones_targeted$isoform,"class_code"]) +rTg4510Ref[rTg4510Ref$qry_id %in% c(as.character(unique(tCountsMelt[tCountsMelt$value > 10,"TXNAME"]))),] # jones dataset as reference -jonesRef <- read.table(paste0(dirnames$jones2024, "comparison/JonesrTg4510.all_iso_ont_collapsed.filtered_counts_filtered.gtf.tmap"), header = T) -detected <- table(jonesRef[jonesRef$ref_id %in% class.files$jones_targeted$isoform, "class_code"]) +jonesRef <- read.table(paste0(dirnames$jones2024, "comparison/targeted/JonesrTg4510.all_iso_ont_collapsed.filtered_counts_filtered.gtf.tmap"), header = T) +unique(jonesRef[jonesRef$ref_id %in% class.files$jones_targeted$isoform & jonesRef$class_code %in% c("=","c"),"ref_id"]) +jonesRef[jonesRef$ref_id %in% class.files$jones_targeted$isoform & jonesRef$class_code %in% c("=","c"),] -rTg4510Ref[rTg4510Ref$qry_id %in% c(as.character(unique(tCountsMelt[tCountsMelt$value > 10,"TXNAME"]))),] + +## ---------- gffCompare output - Whole -------------- + +# rTg4510 as reference +rTg4510Ref <- read.table(paste0(dirnames$jones2024,"comparison/whole/rTg4510Jones.chr_annotations.filtered.gtf.tmap"), header = T) +message("Number of exact match or partial transcripts:", length(unique(rTg4510Ref[rTg4510Ref$class_code %in% c("=","c"),"qry_id"]))) +508/nrow(class.files$jonesfiltered) + +# jones dataset as reference +jonesRef <- read.table(paste0(dirnames$jones2024, "comparison/whole/JonesrTg4510.WholeIsoSeq.collapsed.filtered.gtf.tmap"), header = T) +length(unique(jonesRef$qry_id)) == nrow(class.files$glob_iso) +message("Number of exact match or partial transcripts:", length(unique(jonesRef[jonesRef$class_code %in% c("=","c"),"qry_id"]))) +DetectedJones <- jonesRef[jonesRef$class_code %in% c("=","c"),"qry_id"] +class.files$glob_iso <- class.files$glob_iso %>% mutate(Jones = factor(ifelse(isoform %in% DetectedJones,TRUE,FALSE), levels = c(TRUE,FALSE))) +class.files$glob_iso$meanFL <- class.files$glob_iso %>% select(contains("FL.")) %>% apply(., 1, mean) +nrow(class.files$jonesfiltered)/149814 + +p2 <- ggplot(class.files$glob_iso, aes(x = Jones, y = log10(meanFL))) + geom_boxplot() + + theme_classic() + labs(y = "log10 mean FL reads", x = "Detected in Jones2024 dataset") +t.test(meanFL ~ Jones, data = class.files$glob_iso) + +plot_grid(plot_grid(p1,p2),p3, nrow = 2, rel_heights = c(0.3,0.7), labels = c("A","B","C")) From 3f5c24e64c1b6145b75dfeaff3684932f7e02c7c Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 20 Jun 2024 16:50:36 +0100 Subject: [PATCH 27/29] Review April 2024 - rename paths - keep gene expression to only target genes rather than on AD-associated genes - non polyA detection of error rate --- .../1_IsoSeq_Pipeline/rTg4510_isoseq.config | 24 ++++++------- Paper_Figures/rTg4510_config.R | 4 +++ Reviews/11_Review2024.R | 34 ++++++++++++++++++- 3 files changed, 49 insertions(+), 13 deletions(-) diff --git a/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config b/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config index 480c884..feed702 100644 --- a/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config +++ b/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/rTg4510_isoseq.config @@ -25,8 +25,8 @@ export NAME=AllMouseTargeted export SUBNAME=SubsetAllMouseTargeted ## Output root directory filepath (ensure path exists) -export rTG4510=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 -export WKD_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/B_IsoSeq_Targeted +export rTG4510=/lustre/projects/Research_Project-MRC148213/lsl693scripts/rTg4510/ +export WKD_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693rTg4510/B_IsoSeq_Targeted ## --------------------------- @@ -45,27 +45,27 @@ REF_DATASET=Mouse ## --------------------------- ## Source functions and scripts directory -export SC_ROOT=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/rTg4510 -export GENERALFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General/2_Transcriptome_Annotation -export TAMAFUNC=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/scripts/General/2_Transcriptome_Annotation/TAMA +export SC_ROOT=/lustre/projects/Research_Project-MRC148213/lsl693/scripts/rTg4510/ +export GENERALFUNC=/lustre/projects/Research_Project-MRC148213/lsl693scripts/General/2_Transcriptome_Annotation +export TAMAFUNC=/lustre/projects/Research_Project-MRC148213/lsl693scripts/General/2_Transcriptome_Annotation/TAMA ## --------------------------- ## Reference -export REFERENCE=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/references +export REFERENCE=/lustre/projects/Research_Project-MRC148213/lsl693references export GENOME_FASTA=$REFERENCE/mouse/mm10.fa export GENOME_GTF=$REFERENCE/annotation/gencode.vM22.annotation.gtf -export STAR_REFERENCE_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/references/STAR_main +export STAR_REFERENCE_DIR=/lustre/projects/Research_Project-MRC148213/lsl693references/STAR_main # Primers and Probes export FASTA=$REFERENCE/Primers/primer.fasta export TARGETED_FASTA=$REFERENCE/Primers/targeted.primer.fasta -export PROBES=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/0_metadata/B_isoseq_targeted/Probes/FINAL_MOUSE.bed +export PROBES=/lustre/projects/Research_Project-MRC148213/lsl693rTg4510/0_metadata/B_isoseq_targeted/Probes/FINAL_MOUSE.bed ## --------------------------- ## Long read data (Iso-Seq) -export RAW_ROOT_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/1_raw/B_isoseq_targeted_raw +export RAW_ROOT_DIR=/lustre/projects/Research_Project-MRC148213/lsl693rTg4510/1_raw/B_isoseq_targeted_raw export RAW_BAM_1=$RAW_ROOT_DIR/m54082_191116_131337.subreads.bam #Targeted_Seq_1 export RAW_BAM_2=$RAW_ROOT_DIR/m54082_200731_163617.subreads.bam #Targeted_Seq_2 export RAW_BAM_3=$RAW_ROOT_DIR/m54082_200801_130641.subreads.bam #Targeted_Seq_3 @@ -86,14 +86,14 @@ SUBSET_SAMPLES_NAMES=$(awk '{print $1}' $SC_ROOT/B_Targeted_Transcriptome/1_IsoS ## --------------------------- # Short read data (RNA-Seq) -RNASEQ_FILTERED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/1_raw/C_rnaseq_raw/Tg4510_filtered +RNASEQ_FILTERED_DIR=/lustre/projects/Research_Project-MRC148213/lsl693rTg4510/1_raw/C_rnaseq_raw/Tg4510_filtered RNASEQ_SAMPLES_NAMES=$(awk '{print $1}' $SC_ROOT/B_Targeted_Transcriptome/1_IsoSeq_Pipeline/rTg4510_rnaseq_samples.tsv) -RNASEQ_MAPPED_DIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/rTg4510/C_RNASeq/MAPPED +RNASEQ_MAPPED_DIR=/lustre/projects/Research_Project-MRC148213/lsl693rTg4510/C_RNASeq/MAPPED ## --------------------------- ## Software -export SOFTDIR=/gpfs/mrc0/projects/Research_Project-MRC148213/sl693/software +export SOFTDIR=/lustre/projects/Research_Project-MRC148213/lsl693software export CUPCAKE=$SOFTDIR/Post_Isoseq3/cDNA_Cupcake export ANNOTATION=$CUPCAKE/annotation diff --git a/Paper_Figures/rTg4510_config.R b/Paper_Figures/rTg4510_config.R index d28efa4..0641670 100644 --- a/Paper_Figures/rTg4510_config.R +++ b/Paper_Figures/rTg4510_config.R @@ -163,6 +163,10 @@ GlobalDESeq <- list( resGeneComparison = readRDS(file = paste0(dirnames$glob_output, "/Comparison_DESeq2GeneLevel.RDS")) ) +# re-annotate gene expression deseq results +class.files$glob_iso <- class.files$glob_iso %>% mutate(associated_gene_id = word(isoform,c(2),sep = fixed("."))) +GlobalDESeq$resGeneAnno$wald$norm_counts_all <- merge(GlobalDESeq$resGeneAnno$wald$norm_counts_all, + unique(class.files$glob_iso[,c("associated_gene","associated_gene_id")]), by.x="isoform",by.y = "associated_gene_id") TargetedDESeq <- list( ontResTranAnno = readRDS(file = paste0(dirnames$targ_output, "/Ont_DESeq2TranscriptLevel.RDS")), diff --git a/Reviews/11_Review2024.R b/Reviews/11_Review2024.R index 0877921..e4ff10c 100644 --- a/Reviews/11_Review2024.R +++ b/Reviews/11_Review2024.R @@ -15,11 +15,43 @@ housekeepingGenes = c("Las1l","Rrp1","Gusb","Polr2b","Cyc1","Tbp","Xpnpep1","Gap ## ---------- functions ----------------- +meanTargetGeneExpression <- GlobalDESeq$resGeneAnno$wald$norm_counts_all %>% + filter(associated_gene %in% TargetGene) %>% + group_by(associated_gene) %>% + dplyr::summarise(mean = mean(normalised_counts)) + +meanOtherADGeneExpression <- GlobalDESeq$resGeneAnno$wald$norm_counts_all %>% + group_by(associated_gene) %>% + dplyr::summarise(mean = mean(normalised_counts)) %>% + filter(min(meanTargetGeneExpression$mean) < mean, mean < max(meanTargetGeneExpression$mean)) + +rbind(meanTargetGeneExpression %>% mutate(Dataset = "Target"), + meanOtherADGeneExpression %>% mutate(Dataset = "Others")) %>% + ggplot(., aes(x = mean, fill = Dataset)) + geom_density(alpha = 0.2) + + labs(x = paste0("Number of isoform"), y = "Density") + + theme_classic() + scale_x_continuous(trans='log10') + +dat <- rbind(class.files$glob_iso %>% filter(associated_gene %in% TargetGene) %>% group_by(associated_gene) %>% tally() %>% + mutate(Genes = "Target"), + class.files$glob_iso %>% filter(!associated_gene %in% c(TargetGene)) %>% group_by(associated_gene) %>% tally() %>% + mutate(Genes = "Other protein-coding")) +ggplot(dat, aes(x = n, fill = Genes)) + geom_density(alpha = 0.4) + + labs(x = paste0("Number of isoforms"), y = "Density") + + theme_classic() + scale_x_continuous(trans='log10') + + scale_fill_manual(values = c("green","orange","blue")) + +dat %>% filter(Dataset %in% c("Target","Other protein-coding")) %>% + t.test(n ~ Dataset, data = .) + +dat %>% filter(Dataset %in% c("AD GWAS","Other protein-coding")) %>% + t.test(n ~ Dataset, data = .) + + expressionADGene <- function(){ meanADGeneExpression <- GlobalDESeq$resGeneAnno$wald$norm_counts_all %>% - filter(associated_gene %in% ADRelatedGenes) %>% + filter(associated_gene %in% TargetGene) %>% group_by(associated_gene) %>% dplyr::summarise(mean = mean(normalised_counts)) From d9f0ee591fe0302700471bc453a885230e96c572 Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 20 Jun 2024 16:58:44 +0100 Subject: [PATCH 28/29] Final reviewer comment: detect nonPolyA transcripts --- Reviews/14_nonPolyADetection.R | 62 ++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 Reviews/14_nonPolyADetection.R diff --git a/Reviews/14_nonPolyADetection.R b/Reviews/14_nonPolyADetection.R new file mode 100644 index 0000000..2922ee1 --- /dev/null +++ b/Reviews/14_nonPolyADetection.R @@ -0,0 +1,62 @@ +## ---------- Iso-Seq whole dataset ----------------- + +IsoSeq_polyAErrorRate <- function(limaPath, RefinePath){ + polyA <- lapply(list.files(RefinePath, pattern = "flnc.report.csv", full.names = T), function(x) read.csv(x)) + polyACounts <- lapply(polyA, function(x) nrow(x)) + names(polyACounts) <- list.files(RefinePath, pattern = "flnc.report.csv") + + lima <- lapply(list.files(path = limaPath, pattern = ".fl.lima.counts", full.names = T), function(x) read.table(x, header = T)) + names(lima) <- list.files(path = limaPath, pattern = ".fl.lima.counts") + + polyAFinal <- as.data.frame(do.call(rbind,polyACounts)) %>% tibble::rownames_to_column(., var = "file") %>% + mutate(sample = word(file,c(1),sep=fixed("."))) %>% + `colnames<-`(c("file", "polyA", "sample")) %>% + select(sample, polyA) + + limaFinal <- as.data.frame(do.call(rbind,lima)) %>% tibble::rownames_to_column(., var = "file") %>% + mutate(sample = word(file,c(1),sep=fixed("."))) %>% + select(sample, Counts) %>% + `colnames<-`(c("sample", "lima")) + + PolyAErrorRate = merge(polyAFinal, limaFinal, by = "sample") %>% + mutate(nonPolyA = lima - polyA, percNonPolyA = nonPolyA/lima * 100) + + return(PolyAErrorRate) +} + + +IsoSeq_polyAErrorRate(limaPath = paste0(dirnames$glob_root,"/1_isoseq3/2_lima/2_lima"), + RefinePath = paste0(dirnames$glob_root,"/1_isoseq3/3_refine")) + +IsoSeqTargetedPolyA <- IsoSeq_polyAErrorRate( + limaPath = paste0(dirnames$targ_iso_root,"/2_lima"), + RefinePath = paste0(dirnames$glob_root,"/1_isoseq3/3_refine") +) + + +mean(PolyAErrorRate$percNonPolyA) +mean(PolyAErrorRate$nonPolyA) +mean(PolyAErrorRate$lima) + +### +ONTTargetedPolyA <- rbind( + read.table(paste0(dirnames$targ_ont_root,"/2_demultiplex/Batch2_Demultiplex/All_cutadapt.log"), sep = ":") %>% mutate(Batch = 2), + read.table(paste0(dirnames$targ_ont_root,"/2_demultiplex/Batch3_Demultiplex/All_cutadapt.log"), sep = ":") %>% mutate(Batch = 3) +) + +ONTTargetedPolyA <- ONTTargetedPolyA %>% filter(V2 == "Reads with adapters") %>% + mutate(perc = as.numeric(word(word(V3,c(2),sep=fixed("(")),c(1),sep=fixed("%"))), + kept = as.numeric(gsub(",", "", word(V3,c(1),sep=fixed(" (")))), + sample = word(V1,c(1),sep=fixed("_"))) %>% + filter(sample != "BC10") %>% + mutate(totalReads = as.integer(kept / perc * 100)) %>% + group_by(sample, Batch) %>% + dplyr::summarise(n_totalReads = sum(totalReads), n_kept = sum(kept)) %>% + as.data.frame() %>% + mutate(n_removed = n_totalReads - n_kept, + perc_removed = n_removed/n_totalReads * 100) + +mean(ONTTargetedPolyA$n_totalReads) +mean(ONTTargetedPolyA$n_removed) +mean(ONTTargetedPolyA$perc_removed) + From f7cb683209c99c0665ff031784768a2d0dcda61d Mon Sep 17 00:00:00 2001 From: sl693 Date: Thu, 20 Jun 2024 16:59:03 +0100 Subject: [PATCH 29/29] Add numReads and gencodeAnnotation to utils --- ...ode.vM22.annotation.geneannotation.txt.zip | Bin 0 -> 1243896 bytes 0_utils/numReadsTargeted.txt | 25 ++++++++++++++++++ 0_utils/numReadsWhole.txt | 13 +++++++++ 3 files changed, 38 insertions(+) create mode 100644 0_utils/gencode.vM22.annotation.geneannotation.txt.zip create mode 100644 0_utils/numReadsTargeted.txt create mode 100644 0_utils/numReadsWhole.txt diff --git a/0_utils/gencode.vM22.annotation.geneannotation.txt.zip b/0_utils/gencode.vM22.annotation.geneannotation.txt.zip new file mode 100644 index 0000000000000000000000000000000000000000..dfe49f398efa7083b85531c111db85e10b117f0b GIT binary patch literal 1243896 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

B6j~uB=o*)e{;x>lmK^SkY|r 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�YXg#1sjda- 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 z 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

)}-pdRJM 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

    7$}HaANrb)1cI!me7GCJK?%y# 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 P51gm#09|e&Z|S0jM&&GEAyz9NgHDHC5UC98 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

    L!Kv*ALKVL`+JF?`e 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