"Salmon is a lightweight method for quantifying transcript abundance from RNA–seq reads. Salmon combines a new dual-phase parallel inference algorithm and feature-rich bias models with an ultra-fast read mapping procedure. It is the first transcriptome-wide quantifier to correct for fragment GC-content bias, which, as we demonstrate here, substantially improves the accuracy of abundance estimates and the sensitivity of subsequent differential expression analysis".
Patro, R., Duggal, G., Love, M. et al. Salmon provides fast and bias-aware quantification of transcript expression. Nat Methods 14, 417–419 (2017). https://doi.org/10.1038/nmeth.4197
To adapt this code, change sections in bold according to folders and paths corresponding to your HPC or PC.
Quantification using Salmon for Young Leaves
#!/bin/tcsh
#BSUB -J salmonquant_Soy-w82-CCV-1 #job name
#BSUB -n 12 #number of threads
#BSUB -W 5:0 #time for job to complete
#BSUB -R "rusage[mem=0.2]" #to request a node with 0.2 GB of memory
#BSUB -o salmonquant_YL.%J.out #output file
#BSUB -e salmonquant_YL.%J.err #error file
#to quantify aligned reads using salmon in quasi indexing mode
#set threads under 12 on Hazel
#working directory path is /share/bitcpt/S23/cacofre/Portfolio
#input of aligned reads path is /share/bitcpt/S23/cacofre/Portfolio/AlignedToTranscriptome
#output of aligned reads will go into salmon_align_quant subdirectory in working directory
##########################
# Set the variables
##########################
set SALMON=/usr/local/usrapps/bitcpt/salmon/bin/salmon
set cdna=/share/bitcpt/S23/referenceGenomes/Portfolios/Glycine_max_Wm82-ISU01_v2/glyma.Wm82_ISU01.gnm2_transcriptome.fasta
set IN=AlignedToTranscriptome
##########################
# YL Rep 1
##########################
set s=Gm_YoungLeaf_Rep1
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# YL Rep 2
##########################
set s=Gm_YoungLeaf_Rep2
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# YL Rep 3
##########################
set s=Gm_YoungLeaf_Rep3
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# YL Rep 4
##########################
set s=Gm_YoungLeaf_Rep4
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# YL Rep 5
##########################
set s=Gm_YoungLeaf_Rep5
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
Quantification using Salmon for Meristem
#!/bin/tcsh
#BSUB -J salmonquant_W82-SAM-CCV-1 #job name
#BSUB -n 12 #number of threads
#BSUB -W 5:0 #time for job to complete
#BSUB -R "rusage[mem=0.2]" #to request a node with 0.2 GB of memory
#BSUB -o salmonquant_SAM.%J.out #output file
#BSUB -e salmonquant_SAM.%J.err #error file
#to quantify aligned reads using salmon in quasi indexing mode
#set threads under 12 on Hazel
#working directory path is /share/bitcpt/S23/cacofre/Portfolio
#input of aligned reads path is /share/bitcpt/S23/cacofre/Portfolio/AlignedToTranscriptome
#output of aligned reads will go into salmon_align_quant subdirectory in working directory
##########################
# Set the variables
##########################
set SALMON=/usr/local/usrapps/bitcpt/salmon/bin/salmon
set cdna=/share/bitcpt/S23/referenceGenomes/Portfolios/Glycine_max_Wm82-ISU01_v2/glyma.Wm82_ISU01.gnm2_transcriptome.fasta
set IN=AlignedToTranscriptome
##########################
# Gm_SA_Rep1
##########################
set s=Gm_SA_Rep1
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_SA_Rep2
##########################
set s=Gm_SA_Rep2
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_SA_Rep3
##########################
set s=Gm_SA_Rep3
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_SA_Rep4
##########################
set s=Gm_SA_Rep4
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_SA_Rep5
##########################
set s=Gm_SA_Rep5
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
Quantification using Salmon for Mature Leaves
#!/bin/tcsh
#BSUB -J salmonquant_W82-CCV-ML-1 #job name
#BSUB -n 12 #number of threads
#BSUB -W 5:0 #time for job to complete
#BSUB -R "rusage[mem=0.2]" #to request a node with 0.2 GB of memory
#BSUB -o salmonquant_ML.%J.out #output file
#BSUB -e salmonquant_ML.%J.err #error file
#to quantify aligned reads using salmon in quasi indexing mode
#set threads under 12 on Hazel
#working directory path is /share/bitcpt/S23/mjudd2/Portfolio
#input of aligned reads path is /share/bitcpt/S23/mjudd2/Portfolio/AlignedToTranscriptome
#output of aligned reads will go into salmon_align_quant subdirectory in working directory
##########################
# Set the variables
##########################
set SALMON=/usr/local/usrapps/bitcpt/salmon/bin/salmon
set cdna=/share/bitcpt/S23/referenceGenomes/Portfolios/Glycine_max_Wm82-ISU01_v2/glyma.Wm82_ISU01.gnm2_transcriptome.fasta
set IN=AlignedToTranscriptome
##########################
# Gm_OldLeaf_Rep1
##########################
set s=Gm_OldLeaf_Rep1
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_OldLeaf_Rep2
##########################
set s=Gm_OldLeaf_Rep2
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_OldLeaf_Rep3
##########################
set s=Gm_OldLeaf_Rep3
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_OldLeaf_Rep4
##########################
set s=Gm_OldLeaf_Rep4
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
##########################
# Gm_OldLeaf_Rep5_
##########################
set s=Gm_OldLeaf_Rep5_
${SALMON} quant -l A -a ${IN}/${s}_Aligned.toTranscriptome.out.bam --targets ${cdna} -o salmon_align_quant/${s}.quant
To confirm that the files were generated, check "quant.sf" files into the replicates subfolder, located in the "salmon_align_quant" folder.
If positive, transfer the files (be sure of rename them first, since they have the same name) to you local machine using Globus. These files can be analyze using Galaxy.