Trinity简介(1)--用于无参考基因组的转录组de novo组装

2023-05-16

一、 Trinity简介


Trinity,是由 the Broad Institute 开发的转录组de novo组装软件,由三个独立的软件模块组成:
Inchworm,Chrysalis和Butterfly。三个软件依次来处理大规模的RNA-seq的reads数据。
Trinity的简要工作流程为:
Inchworm: 将RNA-seq的原始reads数据组装成Unique序列;
Chrysalis: 将上一步生成的contigs聚类,然后对每个类构建Bruijn图;
Butterfly: 处理这些Bruijn图,依据图中reads和成对的reads来寻找路径,从而得到具有可变剪接的全长转录子,同时将旁系同源基因的转录子分开。
Trinity发表在 Nature Biotechnology。
二、 Trinity的安装


1. 下载Trinity。
2. 安装Trinity。
1
$ tar zxvf trinityrnaseq_r2013-02-25.tgz
2
$ cd trinityrnaseq_r2013-02-25
3
$ make
仅需要在安装目录下进行make即可。该命令编译了由C++编写的Inchworm和Chrysalis,而 使用Java编写的Butterfly则不需要编译,可以直接使用。


######
$ ls
Analysis/   docs/           Inchworm/    notes     README         Trinity*          util/
Butterfly/  galaxy-plugin/  LICENSE.txt  perl@     Release.Notes  Trinity.pl*
Chrysalis/  htc_conf/       Makefile     PerlLib/  sample_data/   trinity-plugins/
######3


三、Trinity的使用


1. 直接运行安装目录下的程序Trinity.pl来使用该软件,不带参数则给出使用帮助。其典型用法为:
1
Trinity.pl --seqType fq --JM 50G --left reads_1.fq  --right reads_2.fq --CPU 8


2. Trinity参数
必须的参数:
 
--seqType reads的类型:(cfa, cfq, fa, or fq) 
--JM jellyfish使用多少G内存用来进行k-mer的计算,包含‘G’这个字符 
--left 左边的reads的文件名 
--rigth 右边的reads的文件名 
--single 不成对的reads的文件名
#######################################
,调用bowtie, samtools
 ./Trinity --seqType fq --JM 10G --left ACGATC_forward_paired.fq --right ACGATC_reverse_paired.fq --CPU 8 --output trinity_out_dir1
Current settings:
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         unlimited
stack(kbytes)        8192
coredump(blocks)     0
memory(kbytes)       unlimited
locked memory(kbytes) 64
process              unlimited
nofiles              8192
vmemory(kbytes)      unlimited
locks                unlimited




Paired mode requires bowtie. Found bowtie /home/..


 and bowtie-build at /home/..




Found samtools at: /usr/local/bin/samtools


-since butterfly will eventually be run, lets test for proper execution of java
#######################################
Running Java Tests
Friday, October 28, 2016: 14:47:47      CMD: java -Xmx64m -jar tools/de_novo_tools/trinityrnaseq_r20140717/util/support_scripts/ExitTester.jar 0
CMD finished (2 seconds)
Friday, October 28, 2016: 14:47:49      CMD: java -Xmx64m -jar tools/de_novo_tools/trinityrnaseq_r20140717/util/support_scripts/ExitTester.jar 1
-we properly captured the java failure status, as needed.  Looking good.
Java tests succeeded.
###################################


Friday, October 28, 2016: 14:47:49      CMD: mkdir -p /home/trinity_out_dir1
CMD finished (0 seconds)
Friday, October 28, 2016: 14:47:49      CMD: mkdir -p /home/trinity_out_dir1/chrysalis
CMD finished (0 seconds)
Converting input files. (in parallel)Friday, October 28, 2016: 14:47:50 CMD: /hometoools/de_novo_tools/trinityrnaseq_r20140717/trinity-plugins/fastool/fastool --illumina-trinity --to-fasta /home/ionadmin/lix_test_home/gmx/yunjiankang_data/CHG014690/oldmethod/ACGATC_forward_paired.fq >> left.fa 2> /home/ionadmin/lix_test_home/gmx/yunjiankang_data/CHG014690/oldmethod/ACGATC_forward_paired.fq.readcount
Friday, October 28, 2016: 14:47:50      CMD: /home/toools/de_novo_tools/trinityrnaseq_r20140717/trinity-plugins/fastool/fastool --illumina-trinity --to-fasta /home/ACGATC_reverse_paired.fq.readcount


***********************************************************************************************************8
........


##########################################3
可选参数:
Misc:
--SS_lib_type reads的方向。成对的reads: RF or FR; 不成对的reads : F or R。在数据具有链特异性的时候,设置此参数,则正义和反义转录子能得到区分。默认 情况下,不设置此参数,reads被当作非链特异性处理。FR: 匹配时,read1在5'端上游, 和前导链一致, read2在3'下游, 和前导链反向互补. 或者read2在上游, read1在下游反 向互补; RF: read1在5'端上游, 和前导链反向互补, read2在3'端下游, 和前导链一致; 
--output 输出结果文件夹。默认情况下生成trinity_out_dir文件夹并 将输出结果保存到此文件夹中。 
--CPU 使用的CPU线程数,默认为2
--min_contig_length 报告出的最短的contig长度。默认为200 
--jaccard_clip 如果两个转录子之间有UTR区重叠,则这两个转录子很有可能在 de novo组装的时候被拼接成一条序列,称为融合转录子(Fusion Transcript)。如果有 fastq格式的paired reads,并尽可能减少此类组装错误,则选用此参数。值得说明的是: 1. 适合于基因在基因组比较稠密,转录子经常在UTR区域重叠的物种,比如真菌基因组。而对 于脊椎动物和植物,则不推荐使用此参数; 2. 要求fastq格式的paired reads文件(文件 中reads名分别以/1和/2结尾,以利于软件识别),同时还需要安装bowtie软件用于reads 的比对; 
3. 单独使用具有链特异性的RNA-seq数据的时候,能极大地减少UTR重叠区很小的 融合转录子; 4. 此选项耗费运算,若没必要,则不用此参数。 
--prep 仅仅准备一些文件(利于I/O)并在kmer计算前停止程序运行 
--no_cleanup 保留所有的中间输入文件 
--full_cleanup 仅保留Trinity fasta文件,并重命名成${output_dir}. Trinity.fasta 
--cite 显示Trinity文献引证和一些参与的软件工具 
--version 报告Trinity版本并推出 Inchworm 和 K-mer 计算相关选项: 
--min_kmer_cov 使用Inchworm来计算K-mer数量时候,设置的Kmer的最小值。 默认为1
--inchworm_cpu Inchworm使用的CPU线程数,默认为6和--CPU设置的值中的 小值。 Chrysalis相关选项: 
--max_reads_per_graph 在一个Bruijn图中锚定的最大的reads数目,默认为200 000 
--no_run_chrysalis 运行Inchworm完毕,在运行chrysalis之前停止运行 Trinity 
--no_run_quantifygraph 在平行化运算quantifygrahp前停止运行Trinity Butterfly相关选项:
--bfly_opts Butterfly额外的参数 
--max_number_of_paths_per_node 从node A -> B,最多允许多少条路径。默认 为10 
--group_pairs_distance 最大插入片读长度,默认为500 
--path_reinforcement_distance 延长转录子路径时候,reads间最小的重叠碱基 数。默认PE:75; SE:25 
--no_triplet_lock 不锁定triplet-supported nodes 
--bflyHeapSpaceMax 运行Butterfly时java最大的堆积空间,默认 为20G 
--bflyHeapSpaceInit java初始的堆积空间,默认为1G 
--bflyGCThreads java进行无用信息的整理时使用的线程数,默 认由java来决定 
--bflyCPU 运行Butterfly时使用的CPU线程数,默认为2 
--bflyCalculateCPU 计算Butterfly所运行的CPU线程数,由公式  80% * max_memory / maxbflyHeapSpaceMax 得到 
--no_run_butterfly 在Chrysalis运行完毕后,停止运行Butterfly Grid-computing选项: 
--grid_computing_module 选定Perl模块,在/Users/bhaas/SVN/trinityr naseq/trunk/PerlLibAdaptors/。




3. 适合于illumina测序数据的真菌物种转录组组装的Trinity命令为:
Trinity.pl --seqType fq --JM 50G --left reads_1.fq --right reads_2.fq --SS_lib_type FR  --output transcriptome_tissue --CPU 24 --jaccard_clip --inchworm_cpu 24 --group_pairs_distance 500 --bflyCPU 24
4. Trinity生成的结果文件
运行程序结束后,转录组结果为trinity_out_dir/Trinity.fasta。可以使用软件所带的一支程序分析转录组统计信息。
$ $TRINITY_HOME/util/TrinityStats.pl trinity_out_dir/Trinity.fasta Total trinity transcripts: 30706 Total trinity components: 26628 Contig N50: 554
三. Trinity运行原理与过程
1. 检测java的可运行性,因为buttfly会用到
2. 运行jellyfish,使用其dump命令得到jellyfish.kmers.fa文件
3. Inchworm(Linear contig construction from k-mers)
assembles the RNA-seq data into the unique sequences of transcripts, often generating full-length transcripts for a dominant isoform, but then reports just the unique portions of alternatively spliced transcripts.
4. Chrysalis
clusters the Inchworm contigs into clusters and constructs complete de Bruijn graphs for each cluster. Each cluster represents the full transcriptonal complexity for a given gene (or sets of genes that share sequences in common). Chrysalis then partitions the full read set among these disjoint graphs.
5. Butterfly
then processes the individual graphs in parallel, tracing the paths that reads and pairs of reads take within the graph, ultimately reporting full-length transcripts for alternatively spliced isoforms, and teasing apart transcripts that corresponds to paralogous genes.
四. 注意事项
1 Trinity分步运行
当数据量比较大的时候,trinity运行的时间会很长,同时,内存不够等情况出现的时候有可能程序运行崩溃。最好是分步运行。下一步会接着前一步进行下去。
Stage 1: generate the kmer-catalog and run Inchworm: –no_run_chrysalis
Stage 2: Chrysalis clustering of inchworm contigs and mapping reads: –no_run_quantifygraph
Stage 3: Chrysalis deBruijn graph construction: –no_run_butterfly
Stage 4: Run butterfly, generate final Trinity.fasta file. (exclude –no_ options)
2 计算资源
Ideally, you will have access to a large-memory server, ideally having ~1G of RAM per 1M reads to be assembled (but often, much less memory may be required).
The assembly from start to finish can take anywhere from ~1/2 hour to 1 hour per million reads (your mileage may vary). 个人记录了一次,使用dell服务器,64GB RAM,24 threads : 53M 的reads,运行了16.5h(平均3.2M/h),内存使用峰值为43G.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Trinity简介(1)--用于无参考基因组的转录组de novo组装 的相关文章

  • git为单独的仓库设置提交的用户名

    在我们平时的学习中可能有这么一种需求 xff0c 在公司进行开发的时候 xff0c 一般会参与多个项目的开发 xff0c 而项目提交代码时 xff0c 一般请求情况下提供的用户都是同一个 xff0c 而我们为了方便可能会使用全局进行git
  • Ubuntu18.04安装Xfce桌面与VNC远程工具

    1 Xfce桌面的安装 Xfce是一款轻量级的桌面环境 xff0c 运行在类Unix操作系统 xff08 如Linux FreeBSD 和 Solaris xff09 上 xff0c 界面清爽美观且对用户友好 在安装Xfce前需要更新一下系
  • Nginx的临时文件权限问题

    问题 在重启了nginx发现部分较大的Post请求出现了500错误 xff0c 然后 xff0c 查看Nginx错误日志 xff0c 类似如下 xff1a nginx open 34 usr local nginx client body
  • Spring Security中启用CSRF防护(REST版)

    问题 之前文章 Spring Security 43 Spring Session Redis 43 JJWT 介绍了怎么使用Spring Security实现restful风格的登录api 现在 xff0c 我们在这个基础上面实现csrf
  • Android Editable

    简单记一下 xff0c 以前没怎么用过 EditText View的getText直接返回的就是 Editable 而 TextView则是getEditableText才返回 Editable 还有就是注释所说 Replaces the
  • Linux虚拟机断电后开机出现:Entering emeryency mode. Exit the shell to continue.

    在一台服务器上 xff0c 搭建了4个linux虚拟机 可是昨晚不知道怎么的 xff0c 公司断电 今早来的时候发现服务器关机了 然后开机 xff0c 启动虚拟机 xff0c 其中有一台启动不了 xff0c 提示信息如下 xff1a 解决方
  • Web标准和常用浏览器及其内核

    Web标准 Web标准是由W3C组织和其他标准化组织制定的一 系列标准的集合 W3C 万维网联盟 是国际最著名的标准化组织 Web标准的优点 xff1a 1 遵循Web标准除了可以让不同的开发人员写出的页面更标准 更统一 2 让Web的发展
  • java集合集锦_

    java集合集锦 文章目录 java集合集锦一 java集合框架图二 集合简介三 集合遍历四 Arraylist 与 LinkedList 区别 五 ArrayList 与 Vector 区别呢 六 要对集合更新操作时 xff0c Arra
  • java map转为实体类的方法

    一 自己定义方法 span class token keyword public span span class token keyword static span span class token generics function sp
  • oracle 一行转多行

    span class token keyword SELECT span substr span class token punctuation span PBTYPE span class token punctuation span i
  • MiroTik 路由器配置无线中继模式(超细教程)

    关于MikroTik 看一下百度百科中关于MikroTik的介绍吧 MikroTik成立于1995年 xff0c 总部位于拉脱维亚首都里加 xff0c 主要从事开发路由器和无线ISP系统 1997年RouterOS系统 xff0c 2002
  • springmvc项目,启动报错Context initialization failed

    错误描述如下 xff1a springmvc项目 tomcat启动报错 Context initialization failed org span class token punctuation span springframework
  • Spring 总结(学习+面试)

    Spring学习笔记 文章目录 Spring学习笔记1 0 概述1 1使用Spring框架的好处1 2特点 2 0体系结构3 0创建Spring java工程 xff08 eclipse xff09 4 0通过Spring创建对象的方式5
  • tomcat启动,报错Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]

    严重 RMI TCP Connection 3 127 0 0 1 org apache catalina core ContainerBase addChildInternal ContainerBase addChild start o
  • chrome扩展:manifest.json文件详解

    manifest json是扩展的配置文件 xff0c 指明了扩展的各种信息 一个manifest json格式如下 xff1a 必须的字段 3 个 34 name 34 34 MyExtension 34 扩展名称 34 version
  • 检测链表中是否存在回环(Java 版)

    检测链表中是否存在回环 xff0c 这里介绍两种方法 xff1a 快慢指针 xff1b HashSet 存储原理 xff1b 1 快慢指针 快慢指针检查 xff0c 就是定义两个指针 xff0c 一个走的快 xff0c 一个走的慢 xff0
  • 通过http接口进行批量post操作(json格式)

    通过 64 Test或者main方法来进行 相关依赖 poi lt dependency gt lt groupId gt org apache poi lt groupId gt lt artifactId gt poi lt artif
  • spring容器初始化bean后执行方法

    有时 xff0c 我们需要在启动bean时初始化bean属性 xff0c 例如读取perporties文件 xff0c 对属性进行赋值 xff1b 启动容器时让某个method方法执行等等 这时需要在进行配置 xff0c 让bean在注入时
  • 4个简单有效的网页视频下载方法,超级简单好用

    有很多网站的视频是没有下载功能的 xff0c 想要下载视频怎么办呢 xff1f 今天就分享给大家4个简单有效的网页视频下载方法 xff0c 多个平台都适用 xff0c 而且操作简单 xff0c 一看就会 xff01 一 审查元素下载 一个简
  • iptables详解

    5链 INPUT OUTPUT PREROUTING FORWARD POSTROUTING INPUT OUTPUT gt PREROUTING gt 是否为本机 gt FORWARD gt POSTROUTING gt 其他主机 所以

随机推荐

  • 浅谈一致性哈希算法 consistent hashing

    接触过分布式的小伙伴一定对一致性哈希算法这个词语不陌生 xff0c 那么到底什么是一致性哈希算法呢 xff1f 了解一致性哈希算法之前我们先了解下哈希取模 假设我们有三台服务器 xff0c 缓存3万张图片 当然我们可以均匀的分配到每个服务器
  • ubuntu20.04启用SSH

    新安装的ubuntu20 04默认是没有开启ssh的 xff0c 所以无法使用ssh登录系统 1 安装openssh server span class token function sudo span span class token f
  • 密码生成器

    import random def Range get num alist listout 61 while num gt 0 listout append alist random randint 0 len alist 1 num 61
  • centos7安装oracle中遇到的常见问题解决方法

    1 安装图形界面 yum y install gnome 2 安装vnc server yum y install vnc server vncpasswd 设置密码 vncserver启动vnc windows安装vnc客户端客户端 通过
  • java中keytool生成的jks证书转换为openssl格式证书

    一 通常jks文件包含了服务器的私钥 server key xff0c 服务器证书 server crt 根证书 ca crt 二 通过java的keytool工具导出成 PKCS12 格式文件 my p12 keytool importk
  • IBMX3650M4安装win2008Server操作指南

    IBMX3650M4安装win2008Server操作指南 由于IBM服务器是IBM原有的Linux系统 xff0c 所以需要在此硬件上安装Win 2008 Server系统 xff08 以下简称win8 xff09 xff0c 中间遇到了
  • windows远程桌面连接到服务器黑屏问题

    任务管理器使用组合键 Ctrl 43 Alt 43 End xff0c 于是打开了远程电脑的任务管理器 xff0c 取消 xff0c 即可返回桌面正常显示
  • p2p数据分析

    大数据在许多国家具有战略意义 xff0c 其原因不仅在少数巨头公司的应用 xff0c 而是大 中 小 微企业乃至个人 xff0c 都能利用大数据来创造新的价值 而互联网本身就是一个大数据的金矿 xff0c 利用它创造价值 xff0c 是时代
  • 关于The GPG keys listed for the "***" repository are already installed but they are not corret

    这个问题是在自己制作的repo源码库的时候出现的 xff0c 从字面上理解 xff0c 是 为 源码仓库出示的GPG密钥已经安装 xff0c 但不正确 首先 xff0c GPG密钥存在的目的是处于安全和规范考虑 xff0c RedHat在发
  • __stack_chk_fail问题分析

    一 问题 进程收到SIGABRT 信号异常退出 xff0c 异常调用栈显示 stack chk fail Build fingerprint 39 Pico A7H10 PICOA7H10 10 5 5 0 smartcm 16769120
  • 十套精美个人博客网站模板

    文件资源 点击下载 展示在下方 xff0c 点击你想下载的文件 xff0c 然后点击普通下载就能下载了 紫色的图片博客个人页面模板 红色的微博社交平台HTML模板 响应式生活博客设计网站HTML5模板 程序员个人博客模板 响应式的互联网IT
  • 高性能无锁环形队列 Disruptor

    Disruptor 环形队列 JLog 秒级百G级日志搜集 传输 存储解决方案 高性能无锁队列 Disruptor 高性能队列 Disruptor 使用教程 高性能队列Disruptor框架的详细说明与实战使用 SpringBoot 并发框
  • ubuntu20.04更换阿里的软件源

    新安装的ubuntu20 04的软件源是使用的国外的源 xff0c 因此在使用apt安装软件时速度并不怎么快 xff0c 建议大家更换为国内的源 xff0c 这样在使用apt安装软件时速度会有明显的提升的 ubuntu20 04 apt的配
  • mpi运行窗口无反应或者闪退

    原因有三 1 xff0c 服务未启动 2 xff0c 系统防火墙拦截
  • Newtonsoft.Json使用,C# Json文件读取,写入

    用学校作为例子 xff0c 有学校名称 xff0c 学校下面有班级 xff0c 班级有名字 xff0c 班级下面有学生 xff0c 这里面有数组 xff0c 有字段 using System using System Collections
  • Motrix全能下载工具使用

    Motrix是一款界面简约 功能丰富 专业可靠的全能下载工具 先下载 CSDN下载 Motrix zip下载 官方下载地址 Motrix 打开Motrix xff0c 将种子文件放到这里 开始下载
  • ActiveMQ-JMS(五):ObjectMessage的安全问题

    安全问题 按照apache官网的说明 xff0c 为了避免收到恶意代码 xff0c 引入了安全机制 xff0c 只允许指定的包里的对象能够被传输 原文如下 xff1a ObjectMessage objects depend on Java
  • 剑指offer 03

    span class token keyword class span span class token class name Solution span span class token punctuation span span cla
  • 「得印度者,得天下」聊聊你不知道的印度在线视频江湖

    印度 xff0c 一个神奇古老的国度 千百年来 xff0c 恒河水鉴证了古印度王朝的兴衰更迭 xff0c 壮丽的历史文化 xff0c 和印度文明缘起缘灭的生死轮回 时光飞转 xff0c 来到公元 2018年 恒河水波澜不惊一切如昨 xff0
  • Trinity简介(1)--用于无参考基因组的转录组de novo组装

    一 Trinity简介 Trinity xff0c 是由 the Broad Institute 开发的转录组de novo组装软件 xff0c 由三个独立的软件模块组成 xff1a Inchworm Chrysalis和Butterfly