转录组的组装Stingtie和Cufflinks

转录组的组装Stingtie和Cufflinks

Posted: 十月 18, 2017  Under: Transcriptomics  By Kai  no Comments

首先这两款软件都是用于基于参考基因组的转录组组装,当然也可用于转录本的定量。前者于2016年的 protocol上发表的转录组流程HISAT, StringTie and Ballgown后被广泛使用,后者则是老牌的RNA分析软件了。在算法上来说Stringtie使用的是流神经网络算法,Cufflinks则是吝啬算法;从组装效果上来看Stringtie在灵敏度和准确度上表现较好,能够拼接出更完整、更准确的基因;从定量上来说,两者相差不大,但是cufflinks在一些特殊情况下会有异常的表达量;从运行速度上来说,Stringtie远远快了cufflinks了。。。

以上均为听说。。。

不仅以上的所述,最近的一篇Gaining comprehensive biological insight into the transcriptome by performing a broad-spectrum RNA-seq analysis转录组各个分析流程对比的文章中也提到HISAT2+StringTie的搭配使用效果是在基于参考基因组转录本定量中最好的一个。所以我果断选择HISAT2+Stingtie来代替TopHat+Cufflinks来用于转录组的组装

这里主要是记下StringTie的使用,HISAT2则先略过了;当然还有一个Cuffcompare不得不提

下载及安装

直接下载二进制软件

wget http://ccb.jhu.edu/software/stringtie/dl/stringtie-1.3.3b.Linux_x86_64.tar.gz
tar zxvf stringtie-1.3.3b.Linux_x86_64.tar.gz

Stringtie的使用

  1. 将bam文件通过stringTie进行组装,以一个公共数据小鼠为例

    stringtie -p 20 -G ~/reference/genome/mm10/gencode.vM13.annotation.gtf -o control1.gtf control1_sorted.bam

    这里的参数比较简单:

    -p 线程数
    -G 基因组注释文件
    -o 输出的gtf文件

    还有一些其他参数,比如:

    -m 组装预测的最小的转录本长度
    -B 用于下游Ballgown做差异分析
    -A 用于输出Gene abundances文件
    -e 表示只对参考基因组注释文件中的转录组进行定量

    还有需要注意的是,如果输入的bam文件是来自于HISAT2比对的话,需要在HISAT2使用时加上–dta,这有利于stringtie的组装

  2. 输出gtf格式文件,内容如下(可看官网的上的说明):

    1.seqname :Denotes the chromosome, contig, or scaffold for this transcript
    2.source :The source of the GTF file, default stringtie
    3.feature :Feature type; e.g., exon, transcript, mRNA, 5’UTR)
    4.start :Start position of the feature (exon, transcript, etc), using a 1-based index
    5.end :End position of the feature, using a 1-based index
    6.score :A confidence score for the assembled transcript. Currently this field is not used, and StringTie reports a constant value of 1000 if the transcript has a connection to a read alignment bundle
    7.strand : If the transcript resides on the forward strand, ‘+’. If the transcript resides on the reverse strand, ‘-‘
    8.frame :Frame or phase of CDS features. StringTie does not use this field and simply records a “.”
    9.attributes :

    • gene_id: A unique identifier for a single gene and its child transcript and exons based on the alignments’ file name.
    • transcript_id: A unique identifier for a single transcript and its child exons based on the alignments’ file name.
    • exon_number: A unique identifier for a single exon, starting from 1, within a given transcript.
    • reference_id: The transcript_id in the reference annotation (optional) that the instance matched.
    • ref_gene_id: The gene_id in the reference annotation (optional) that the instance matched.
    • ref_gene_name: The gene_name in the reference annotation (optional) that the instance matched.
    • cov: The average per-base coverage for the transcript or exon.
    • FPKM: Fragments per kilobase of transcript per million read pairs. This is the number of pairs of reads aligning to this feature, normalized by the total number of fragments sequenced (in millions) and the length of the transcript (in kilobases).
    • TPM: Transcripts per million. This is the number of transcripts from this particular gene normalized first by gene length, and then by sequencing depth (in millions) in the sample. A detailed explanation and a comparison of TPM and FPKM can be found here, and TPM was defined by B. Li and C. Dewey here
  3. 用Transcript merge mode合并所有样本组装的转录本,类似于cufflinks套件中的cuffmerge
    stringtie --merge -p 20 -o stringtie_merged.gtf mergelist.txt

    mergelist包含了所有样本的组装后的gtf文件

    还可以通过-m,-c,-F,-T以及-f等参数对组装后的转录本在merge时进行过滤

    如果需要加入参考基因组的注释文件,可以用-G参数加入

  4. 后续可以接差异分析

    在stringtie组装时使用了-B/-b,-e参数,然后stringtie merge时使用-G参数,接着用Ballgown进行differential expression分析。并且在官网内还提到可以使用一个python脚本来从stringtie结果中提取read count,用于DESeq2和edgeR包做差异分析。。。但是没试过。。

Cuffcompare

这个软件是cufflinks套件中的一个,为什么要使用这个软件呢,是因为它有stringtie没有的功能,但是我觉得蛮实用的,就是用于预测新转录本或者对基因结构进行优化等(当然只能用于参考而已)。Cuffcompare是将组装后的转录本与参考基因组的转录本进行比较,从而对比对结果进行分类

  1. 使用cuffcompare将组装转录本与参考基因组的进行比较

    cuffcompare -r ~/reference/genome/mm10/gencode.vM13.annotation.gtf -s ~/reference/genome/mm10/GRCm38.p5.genome.fa stringtie_merged.gtf

    -r 参考基因组的注释文件
    -s 参考基因组序列

  2. 输出结果文件
    • cuffcmp.loci :locus id的位置信息,个人理解为组装后的gene的local信息
    • cuffcmp.stats :统计结果展示,看看就行了
    • cuffcmp.combined.gtf :如果输入多个gtf组装文件的话,这个文件是将多个文件中的转录本并集输入到这个文件中
    • cuffcmp.stringtie_merged_new.gtf.refmap :如果组装的gtf文件中的转录本either fully or partially match参考基因组转录本,则输入该文件中,也就是说组装后与参考基因组几乎完全匹配的转录本
    • cuffcmp.stringtie_merged_new.gtf.tmap :这个文件跟cuffcmp.stringtie_merged_new.gtf.refmap形式相似,但是输入的则是组装后与参考基因组较为近似的转录本
    • cuffcmp.tracking :这个是比较重要的一个文件,里面含有cuffcompare软件对组装转录本分类定义的描述信息

    2.1 cuffcmp.tracking文件

    • 第1列 :Cufflinks transfrag id,A unique internal id for the transfrag
    • 第2列 :Cufflinks locus id,A unique internal id for the locus
    • 第3列 :Reference gene id(如果没有则为”-“)
    • 第4列 :Reference transcript id(如果没有则为”-“)
    • 第5列 :class code,也就是组装转录本的分类信息
      1   =   Complete match of intron chain
      2   c   Contained
      3   j   Potentially novel isoform (fragment): at least one splice junction is shared with a reference transcript
      4   e   Single exon transfrag overlapping a reference exon and at least 10 bp of a reference intron, indicating a possible pre-mRNA fragment.
      5   i   A transfrag falling entirely within a reference intron
      6   o   Generic exonic overlap with a reference transcript
      7   p   Possible polymerase run-on fragment (within 2Kbases of a reference transcript)
      8   r   Repeat. Currently determined by looking at the soft-masked reference sequence and applied to transcripts where at least 50% of the bases are lower case
      9   u   Unknown, intergenic transcript
      10  x   Exonic overlap with reference on the opposite strand
      11  s   An intron of the transfrag overlaps a reference intron on the opposite strand (likely due to read mapping errors)
      12  .   (.tracking file only, indicates multiple classifications)

    理解cuffcmp.tracking文件中的分类信息,然后参考一些文献中的预测新转录本的阈值条件,即可筛选出潜在的新转录本(作为参考),我暂时是这么理解的

    补充一点,才发现其实还有一个软件gffcompare也能做cuffcompare的工作,stringtie开发者也推荐使用

参考文章:
http://blog.csdn.net/hill_night/article/details/44829965
http://www.bio-info-trainee.com/2073.html

原文地址:https://www.cnblogs.com/wangprince2017/p/9937225.html

时间: 2024-08-28 16:18:06

转录组的组装Stingtie和Cufflinks的相关文章

RNA-seq流程需要进化啦!

RNA-seq流程需要进化啦! Posted on 2015年9月25日 Tophat 首次被发表已经是6年前 Cufflinks也是五年前的事情了 Star的比对速度是tophat的50倍,hisat更是star的1.2倍. stringTie的组装速度是cufflinks的25倍,但是内存消耗却不到其一半. Ballgown在差异分析方面比cuffdiff更高的特异性及准确性,且时间消耗不到cuffdiff的千分之一 Bowtie2+eXpress做质量控制优于tophat2+cufflin

混合纠错PBcR--Hybrid error correction and de novo assembly of single-molecule sequencing reads

原文链接:Hybrid error correction and de novo assembly of single-molecule sequencing reads 单分子测序reads(PB)的混合纠错和denovo组装 我们广泛使用的PBcR的原始文章就是这一篇 摘要: PB技术可以产生极长的reads,可以显著提高基因组和转录组的组装. 然而,单分子测序的reads的error rate非常高,这限制了它们在重测序方面的应用. 为了解决这个问题,我们创造了PBcR这个纠错算法和组装策

转录组分析工具大比拼 (完整翻译版)

转录组分析工具大比拼 文献阅读与翻译 - Gaining comprehensive biological insight into the transcriptome by performing a broad-spectrum RNA-seq analysis (Nature Communications DOI: 10.1038/s41467-017-00050-4) 摘要 RNA-sequencing (RNA-seq)是转录组研究的重要技术.自从RNA-seq技术问世以来,已经开发了大

基于eXpress对转录组和基因组进行量化

; color:rgb(51,51,51); font-family:Arial,Console,Verdana,'Courier New'"> NGS 目录(?)[+] General workflow eXpress是一个通用的丰度估计工具,它可以应用于任意靶序列和高通量测序reads. 靶序列可以是任意基因组区域,例如RNA-seq中的转录本.因此,一般的流程应该是这样的: 1. 选择你要分析的数据 2. 产生靶序列的集合 3.将目的片段比对到靶序列上 4. eXpress需要的参数

转录组分析的正确姿势

转录组分析的正确姿势 转录组分析是目前应用最广的高通量测序分析技术之一.常见设计是不同样品之间比较,寻找差异基因.标志基因.协同变化基因.差异剪接和新转录本,并进行结果可视化.功能注释和网络分析等. 转录组的测序分析也相对成熟,从RNA提取.构建文库.上机测序再到结果解析既可以自己完成,又可以在专业公司进行. 概括来看转录组的分析流程比较简单,序列比对-转录本拼接 (可选)-表达定量-差异基因-功能富集-定制分析.整个环节清晰流畅,可以作为最开始接触高通量测序学习最合适的技术之一. 但重点和难点

HISAT2,StringTie,Ballgown处理转录组数据

HISAT2,StringTie,Ballgown处理转录组数据 本文总阅读量次2017-05-26 HISAT2,StringTie,Ballgown处理转录组数据思路如下: 数据质控 将RNA-seq的测序reads使用hisat2比对 samtools将sam文件转成bam,并且排序,为下游分析做准备 stringtie对每个样本进行转录本组装 stringtie 将所有样本的转录本进行合并 注意:此处的mergelist.txt是自己创建的 计算表达量并且为Ballgown包提供输入文件

8个节点,每个节点上布置6个ROS,组装都用250,读出都用251,事例率为645.3Hz

组装都用250网段,读出都用251网段.除了黄色部分以外的节点都是cmm03节点. 平均事例率为:645.26Hz, ros所在节点的cpu idle 为17%.

【BZOJ2666】[cqoi2012]组装 贪心

[BZOJ2666][cqoi2012]组装 Description 数轴上有m个生产车间可以生产零件.一共有n种零件,编号为1~n.第i个车间的坐标为xi,生产第pi种零件(1<=pi<=n).你需要在数轴上的某个位置修建一个组装车间,把这些零件组装起来.为了节约运输成本,你需要最小化cost(1)+cost(2)+…+cost(n),其中cost(x)表示生产第x种零件的车间中,到组装车间距离的平方的最小值. Input 输入第一行为两个整数n, m,即零件的种类数和生产车间的个数.以下m

2017盛大游戏杯 零件组装(状态压缩DP之巧妙枚举子集)

题目链接:2017盛大游戏杯 零件组装 题意: 有n个零件,给你相邻关系和排斥关系,每两块零件组装起来有一个代价,问最少的代价总和是多少. 题解: 考虑状态压缩,dp[i]表示i这个集合为一个零件块. 那么要枚举一下i的子集.O(3^n). 先要预处理一下每个集合的排斥个数和相邻个数,然后容斥一下就可以了. 1 #include<bits/stdc++.h> 2 #define mst(a,b) memset(a,b,sizeof(a)) 3 #define F(i,a,b) for(int