A brief introduction of salmon

简介

Salmon是一款定量分析RNA-seq的软件,号称Fast、accurate、bias-aware and Don’t count…quantify定量分析转录本。本文主要简要的介绍一下Salmon。具体的情况可移步 Salmon官网

安装

可以去 Github里下载Salmon进行安装

$ mkdir Salmon && cd Salmon
$ wget  https://github.com/COMBINE-lab/salmon/releases/download/v0.8.2/Salmon-0.8.2_linux_x86_64.tar.gz
$ tar zxvf Salmon-0.8.2_linux_x86_64.tar.gz

至于路径则根据自己电脑进行配置,这里不讲,安装成功的话则可以用salmon -h查看帮助文件。应该可以看到如下输出:

$ salmon -h
Salmon v0.8.1

Usage:  salmon -h|--help or
        salmon -v|--version or
        salmon -c|--cite or
        salmon [--no-version-check] <COMMAND> [-h | options]

Commands:
     cite  Show salmon citation information
     index Create a salmon index
     quant Quantify a sample
     swim  Perform super-secret operation

也可以利用conda安装,这样就可以省去很多麻烦。

$ conda install salmon

获取转录组

Salmon是直接将原始序列map到转录组上而不是全基因组上(这是很重要的一点,千万不要搞混了,这也是作者一直在强调的),这里我们就以拟南芥为例下载其转录组。

#Creat a directory 
$ mkdir RNA-seq_test cd RNA-seq_test
$ wget ftp://ftp.ensemblgenomes.org/pub/plants/release-28/fasta/arabidopsis_thaliana/cdna/Arabidopsis_thaliana.TAIR10.28.cdna.all.fa.gz -o athal.fa.gz

好了,现在转录组已下载好,接下来就是建立索引了

建立索引

利用Salmon建立索引十分简单,一行命令就搞定

$ salmon index -t athal.fa.gz -i athal_index

这里解释一下几个参数:

  • -t: 表示需要用到的转录组,这里是拟南芥的,我们刚下载好的athal.fa.gz
  • -i: 表示我们建立的索引的名称,它是一个文件夹

更多的参数设置可以 参考说明

获取序列数据

一次试验数据往往很多,我们可以写一个脚本进行下载,这里简单示例一下:

#!/bin/bash
mkdir data
cd data
for i in 'seq 25 40';
do
  madir DRR0161${i};
  cd DRR0161${i};
  wget ftp://ftp.sra.ebi.ac.uk/vol1/fastq/DRR016/DRR0161${i}/DRR0161${i}_1.fastq.gz; 
  wget ftp://ftp.sra.ebi.ac.uk/vol1/fastq/DRR016/DRR0161${i}/DRR0161${i}_2.fastq.gz; 
  cd ..; 
done
cd .. 

将其保存为obtain_reads.sh,将其运行只需以下命令就行:

$ bash obtain_reads.sh

定量样本

这次也写一个简单脚本进行定量

#!/bin/bash
for fn in data/DRR0161{25..40};
do
samp=`basename ${fn}`
echo "Processing sample ${samp}"
salmon quant -i athal_index -l A \
         -1 ${fn}/${samp}_1.fastq.gz \
         -2 ${fn}/${samp}_2.fastq.gz \
         -p 8 -o quants/${samp}_quant
done 

这里简单说明一下几个参数:

  • -i: 用来告诉salmon哪里寻找索引index
  • -l A: 告诉salmon自行决定是何种类型的序列数据
  • -1,-2:就是两端测序的两个序列了
  • -p 8: 8线程
  • -o: 输出文件,这里是所有输出文件都保存至quants,并且文件命名为sample_quant

更多参数选择及说明可以参考 说明文件 这里每个样品文件里都含有一个主文件quant.sf。在后续的差异分析中有重要作用,后续再讲。 定量之后接下来就是进行具体分析了,一般来说都在R里面进行,R&Bioconductor有大量的包进行下游的分析,比如 DESeq2edgeRlimma以及 sleuth等,后续文章我会讲解如何通过 tximport将定量化的转录组数据导入到R语言中进行差异分析。

Researcher

I am a PhD student of Crop Genetics and Breeding at the Zhejiang University Crop Science Lab. My research interests covers a range of issues:Population Genetics Evolution and Ecotype Divergence Analysis of Oilseed Rape, Genome-wide Association Study (GWAS) of Agronomic Traits.

comments powered by Disqus