对trinity组装得到的转录本进行表达矩阵构建

前提已经获得了trinity生成的.fasta文件(trinity_out_dir_all.Trinity.fasta)

在此,我们采用的是Trinity自带的脚本进行定量计算。

一:首先生成如下的一个**samples.txt**文档,包含了所有的样本:

cond_J    cond_J1    J1_1.fq.gz    J1_2.fq.gz

cond_J    cond_J2    J2_1.fq.gz    J2_2.fq.gz

cond_J    cond_J3    J3_1.fq.gz    J3_2.fq.gz

cond_SF    cond_SF1    SF1_1.fq.gz    SF1_2.fq.gz

cond_SF    cond_SF2    SF2_1.fq.gz    SF2_2.fq.gz

cond_SF    cond_SF3    SF3_1.fq.gz    SF3_2.fq.gz

cond_SM    cond_SM1    SM1_1.fq.gz    SM1_2.fq.gz

cond_SM    cond_SM2    SM2_1.fq.gz    SM2_2.fq.gz

cond_SM    cond_SM3    SM3_1.fq.gz    SM3_2.fq.gz


二:用trinity自带的脚本align_and_estimate_abundance.pl进行转录本表达定量。

$align_and_estimate_abundance.pl  #指明调用的脚本

--transcripts  /data1/spider/ytbiosoft/data/trinity.all/trinity_out_dir_all.Trinity.fasta  #读取之前Trinity拼接的转录本

--seqType fq --samples_file /data/spider_data/tamu/sample.txt  #读取第一步创建的样品信息

--est_method  RSEM  #进行表达量计算的软件是RSEM

--aln_method bowtie2  #由于RSEM是通过比对进行的表达量计算,因此会采用的bowtie2进行比对

--trinity_mode  #这个加上会采用Trinitymode以调用前期assembly过程中的一个gene_trans_map文件

--prep_reference  #会根据拼接的fasta文件构建index 

--output_dir /data1/spider/ytbiosoft/data/RSEMResult  #输出文件夹,如果不指定路径的话,由于会采用读取样品信息,因此会输入到样品信息的文件夹

--thread_count 6  #线程数


三:最后会生成6个文件夹(我有6个样),每个文件夹内容如下,最主要的是RSEM.genes.results与RSEM.isoforms.results。

├── bowtie2.bam #bowtie2 生成的 bam文件

├── bowtie2.bam.for_rsem.bam #用于RSEM计算的 bam文件

├── bowtie2.bam.ok

├── RSEM.genes.results #基于基因的EM Reads Count

├── RSEM.isoforms.results #基于转录本的 EM Reads Count

├── RSEM.isoforms.results.ok

└── RSEM.stat

        ├── RSEM.cnt

        ├── RSEM.model

       └── RSEM.theta

四:由于我们在每一个文件夹中的Reads count 没有经样本间的均一化,因此需要做一个样本均一化,构建转录本-基因表达矩阵并得到不同样本中的均一化表达数据TMM是后期要做的一个工作。我们采用以下的矩阵的到了三个结果


* 首先手动整理到一个文件夹中:

$find * -name '*.isoforms.results'> quant.file  #这个地方,我们采用了find命令将子文件夹中的isoforms基因表达量结果全部查找出来然后路径放到一个文件中(quant.file)后期要使用

可以$cat quant.file文件看一下内容

* 再调用trinity自带脚本abundance_estimates_to_matrix.pl构建转录本-基因表达矩阵

abundance_estimates_to_matrix.pl  #采用的脚本

--est_method RSEM  #由于是对RSEM的结果进行矩阵构建,因此需要说明这个

--gene_trans_map trinity_out_dir_all.Trinity.fasta.gene_trans_map  #通过这个map构建基因的表达量矩阵

--name_sample_by_basedir  #**这个必须要选**,不然会导致程序没办法合并之前的结果进行计算

--quant_files quant.file  #这个指明需要的上游文件的位置

* 经过计算后得到的结果如下:

同理做*.genes.results的表达矩阵。

最后获得*.genes.results以及*.isoforms.result的表达矩阵:

* 以上结果中分为基因的表达矩阵和转录本的表达矩阵。

其一: '.counts.matrix' 文件用于后期的差异表达分析

其二: '.TMM.EXPR.matrix'文件可以用于其他基因表达的分析

到此,就把相关的基因表达均一化这边的工作做完了,应该说经过这个工作后所有的基因的表达量已经完成计算,后期就是通过差异表达的软件进行一个差异分析就可以进入可视化阶段了。

欢迎联系互相学习:[email protected]

你可能感兴趣的:(对trinity组装得到的转录本进行表达矩阵构建)