TransDecoder识别转录本中编码区并预测蛋白

TransDecoder可以识别转录本序列中的编码区域,如:Trinity从头组装、Tophat和Cufflinks将RNA-Seq比对到基因组转录本结果

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

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

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

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

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

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

    该软件主要由Broad Institute的Brian Haas和Commonwealth Scientific and Industrial Research Organisation的Alexie Papanicolaou维护。它被整合在其它相关的软件中:Trinity,PASA,EVidenceModeler和Trinotate。

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

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

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

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

      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脚本。你可以运行它来验证一个从cufflinks的GTF文件开始的整个过程。注意,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 : 每个ORF同6个阅读框间对数似然得分的总和

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格式文件,最好用GenomeView或IGV来查看。

将直系同源搜索作为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搜索多肽的蛋白质结构域。这需要安装hmmer3和Pfam数据库。

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

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

将Blast和Pfam搜索结果整合到编码区域选择

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

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

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

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

推荐使用GenomeView或IGV来在基因组或者转录组范畴内查看候选的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

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值