加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

TransDecoder 使用说明

(2016-07-22 09:18:31)
分类: 转录组

TransDecoder识别转录本序列中候选的编码区域,诸如那些将RNA-Seq数据用Trinity从头组装或者使用TophatCufflinksRNA-Seq比对到基因组中构建的转录本。

TransDecoder 基于以下标准识别可能的编码序列:

        1) 在转录本序列中需要能够找到一个(满足)最小(限定)长度的ORF;

        2) 对数似然数得分大于0。(与GeneID软件计算得到的得分相类似);

        3) 第一阅读框的对数似然数打分同其它5个阅读框比较为最大值时;

        4) 如果候选的ORF完全被包含在其它候选ORF的框架内,那么报告最长的ORF。否则,一个单独的转录本会得到多个ORF的报告。(考虑到有操纵子、嵌合体等情况);

        5) 作为可选项,预测出的多肽在Pfam domain库中存在比对分值高于得分阈值之上的。

        该软件主要由Broad InstituteBrian HaasCommonwealth Scientific and Industrial Research OrganisationAlexie Papanicolaou维护。它被整合在其它相关的软件中:TrinityPASAEVidenceModelerTrinotate


获取TransDecoder


        TransDecoder可以在下面的网址找到:https://github.com/TransDecoder/TransDecoder/releases

        在当前安装目录下输入make进行编译 (注意: 只有cd-hit软件是编译过的,它同TransDecoder捆绑并受其调用) 。


运行TransDecoder


1. 从fasta格式文件预测编码区

        TransDecoder通过运行一个包含目的转录本序列的fasta文件来实现功能。简单的用法如下:

        # Step 1: 提取最长的开放阅读框

            TransDecoder.LongOrfs -t target_transcripts.fasta

            默认情况下,TransDecoder.LongOrfs将识别长度至少为100个氨基酸的开放阅读框。你可以通过-m参数来降低这个值,但是要知道随着最小长度的变短,ORF预测的假阳性率迅速增长。

        # Step 2: (可选)

            可选地,可以通过blast或者pfam搜索已知蛋白的同源序列来识别ORF

            见下面的Including homology searches as ORF retention criteria章节。

        # Step 3: 预测可能的编码区

            TransDecoder.Predict -t target_transcripts.fasta [ homology options ]

           如果转录本按照有义链进行了调整,那么使用-S标记来只检查top链。完整的使用信息见后面。

           候选编码区的最终集合可以在文件.transdecoder中找到。扩展名包括.pep.cds.gff3.bed


2. 从基于基因组的转录结果GTF文件开始预测(如:cufflinks


        这个过程等同于前面的特例。我们首先必须生成一个与转录本序列一致的fasta文件,然后,我们重新计算一个GFF3格式的基因组注释文件。该文件按基因组坐标来描述预测的编码区域。

        使用基因组和转录本gtf文件来构建转录本fasta文件的方式如下:

          util/cufflinks_gtf_genome_to_cdna_fasta.pl transcripts.gtf test.genome.fasta > transcripts.fasta

        接下来,将转录本结构GTF文件转换为一个alignment-GFF3格式的校准文件(做这步只是因为我们用gff3进行处理好于从gtf文件开始)。可以像这样完成gtfalignment-gff3的转换,以使用cufflinksGTF输出为例:

          util/cufflinks_gtf_to_alignment_gff3.pl transcripts.gtf > transcripts.gff3

        现在,运行前面描述的过程来生成你的最佳候选ORF的预测:

          TransDecoder.LongOrfs -t transcripts.fasta

         (optionally, identify peptides with homology to known proteins)

          TransDecoder.Predict -t transcripts.fasta [ homology options ]

        最后,生成一个基于基因组的编码区域注释文件:

          util/cdna_alignment_orf_to_genome_orf.pl transcripts.fasta.transdecoder.gff3 transcripts.gff3 transcripts.fasta > transcripts.fasta.transdecoder.genome.gff3

样本数据和运行

sample_data文件夹包含一个runMe.sh脚本。你可以运行它来验证一个从cufflinksGTF文件开始的整个过程。注意,TransDecoder典型用法的例子是从一个包含目的转录本的fasta文件开始的。然而,在基因组分析的例子中,转录本通常是从注释的坐标中推断出来的,例如Cufflinks GTF格式的文件。在这个例子中,转录本序列是基于GTF注释坐标重构出来的,然后TransDecoder执行了这个fasta文件。我们为将转录本ORF坐标转换为基因组坐标提供了一个额外的实例,以便这些区域可以在基因组范畴内得以检验。

输出文件说明

一个用于运行和存储中间结果的工作目录(如:transcripts.transdecoder_dir)会被创建并包含:

longest_orfs.pep   : 所有达到最小长度标准的ORF, 不管是否编码

longest_orfs.gff3  : 在目的转录本中发现的所有ORF的位置

longest_orfs.cds   : 所有检测到的ORF的核酸编码序列

longest_orfs.cds.top_500_longest   : 500个最长的ORF,用于训练一个编码序列的马尔科夫模型

hexamer.scores                     : 每个k-mer的对数似然得分 (coding/random)

longest_orfs.cds.scores            : 每个ORF6个阅读框间对数似然得分的总和

longest_orfs.cds.scores.selected   : 根据得分标准所选出的ORF

longest_orfs.cds.best_candidates.gff3               : 转录本中选出的ORF的位置

然后,最后的输出文件在你当前的工作目录中。

transcripts.fasta.transdecoder.pep : 最终候选ORF的蛋白质序列;所有较长ORF中的较短的候选序列已被移除。

transcripts.fasta.transdecoder.cds  : 最终候选ORF的编码区的核酸序列。

transcripts.fasta.transdecoder.gff3 : 最终被选中的ORF在目的转录本中的位置

transcripts.fasta.transdecoder.bed  : 用来描述ORF位置的bed格式文件,最好用GenomeViewIGV来查看。

将直系同源搜索作为ORF的保留标准

为进一步最大化捕捉具有功能意义的ORF的敏感度,可以像之前提到的不管编码似然得分,你可以扫描所有与已知蛋白同源的ORF并保留这类ORF。这可以通过两种方法做到:用BLAST搜索已知蛋白的数据库进,以及搜索PRAM来识别共同的蛋白质结构域。在TransDecoder中是按照如下方式完成的。

BlastP搜索

使用BLAST+搜索一个蛋白质数据库,诸如Swissprot较快)or Uniref90 较慢但更全面

一个示例命令就像这样:

blastp -query transdecoder_dir/longest_orfs.pep  -db uniprot_sprot.fasta  -max_target_seqs 1 -outfmt 6 -evalue 1e-5 -num_threads 10 > blastp.outfmt6

如果你可以使用计算集群,考虑使用HPC GridRunner进行更有效的并行计算。

Pfam搜索

使用Pfam搜索多肽的蛋白质结构域。这需要安装hmmer3Pfam数据库。

hmmscan --cpu 8 --domtblout pfam.domtblout /path/to/Pfam-A.hmm transdecoder_dir/longest_orfs.pep

就像BLAST搜索中那样,如果你可以使用计算集群,考虑使用HPC GridRunner

BlastPfam搜索结果整合到编码区域选择

TransDecoder借助上面生成的输出结果来确定将这些被blast命中的和结构域命中的多肽保留在报告的编码区集合中。像这样运行TransDecoder.Predict

TransDecoder.Predict -t target_transcripts.fasta --retain_pfam_hits pfam.domtblout --retain_blastp_hits blastp.outfmt6

最终的编码区预测结果将包含与编码区域一致的序列字符以及blast得到的直系同源结果或pfam结构域的内容。

在基因组浏览器中查看ORF预测结果

推荐使用GenomeViewIGV来在基因组或者转录组范畴内查看候选的ORF。下面的例子展示了如何使用GenomeView来完成这个任务。

在目的转录本中浏览ORFs

java -jar $GENOMEVIEW/genomeview.jar transcripts.fasta transcripts.fasta.transdecoder.bed

如果你没有基因组序列并且仅仅使用目的转录本。你可以将转录本的fasta文件和ORF预测结果(bed文件)加载到GenomeView(如下)。


在基因中浏览转录本结构范围内的ORF

java -jar $GENOMEVIEW/genomeview.jar test.genome.fasta transcripts.bed transcripts.fasta.transdecoder.genome.bed

基于cufflinks的转录本原始结构用黑色显示,预测的编码区域用青色显示。

原文:http://blog.chinaunix.net/uid-12084847-id-5747180.html 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有