以一篇中文为例,看转录组组装在一篇中文核心或者SCI期刊的地位。
内容如下:参考转录组的组装、 构建和注释使用fastp软件(v0.23.1) (Chen et al., 2018)对RNA-seq测序产生的原始数据进行质控。 该软件能够自动识别并去除测序数据中的接头序列, 删除包含“N”的读数以及质量较低的读数, 最终得到经过处理的高质量、 无污染的测序读数用于下一步分析。 使用hisat2软件(v2.2.1)(Kim et al., 2015)将干净读数比对到割手密参考基因组AP85-441(2 n=4x=32)(http: //sugarcane.zhangjisenlab.cn/sgd/html/download.html)。 比对上参考基因组的读数使用Trinity软件(v2.1.1)(Haas et al., 2013)进行基因组引导的有参转录本组装, 而未比对上的读数经过无参从头组装获得的转录本作为补充, 得到每个甘蔗种质的转录本数据集。 以割手密参考基因序列及S. spontaneum(Y83)的转录本数据集作为比对中心, 与其他种质的转录本数据集建立对应关系, 这一过程使用GMAP软件(v2021-08-25)(Wu and Watanabe, 2005)(参数: -min-Identity 0.9)及CD-HIT-EST软件(v4.8.1)(Li and Godzik, 2006)删除冗余后的序列(参数: -c 0.8), 最终得到这四个种质的代表性转录本数据集, 即参考转录本。 BUSCO用于转录本组装完整性评估(使用数据库: mbryophyta_odb10); (G+C)含量、 Contig N50、 平均长度等指标用于组装质量评估。 功能注释由多个公共数据库参与注释, 参考转录本通过BLASTx分别比对到Nr(ProteinBLAST:http: //blast.ncbi.nlm.nih.gov/Blast.cgi?PAGE=Protein)、 PDB(PBD:http: //www.rcsb.org/)、 KOG(KOG:http: //ftp.ncbi.nih.gov/pub/COG/KOG/kyva)和Swiss-Prot(http: //www.gpmaw.com/html/swiss-prot.html)数据库, 阈值为E-value<10-5。
那么如何对转录组进行组装呢?查阅大量中文英文杂志后发现,多使用trinity进行转录本组装。
目前五种主流的转录组从头组装软件(SOAPdenovo、Trans-ABy SS、Trinity、Bridger和Bin Packer),其中trinity较频繁使用,且一直维护更新。
Trinity是由布罗德研究所和耶路撒冷希伯来大学开发的,代表了一种新颖的方法,用于从RNA-seq数据中高效且稳健地从头重建转录组。Trinity结合了三个独立的软件模块:Inchworm、Chrysalis和Butterfly,这些模块依次应用于处理大量的RNA-seq读取数据。Trinity将序列数据分割成许多个独立的de Bruijn图,每个图代表在给定基因或位点的转录复杂性,然后独立处理每个图,以提取全长剪接异构体,并区分来自旁系同源基因的转录本。简而言之,该过程如下:
(1) Inchworm将RNA-seq数据组装成转录本的独特序列,经常为主导异构体生成全长转录本,但随后仅报告另类剪接转录本的独特部分。
(2) Chrysalis将Inchworm的连锁片段聚集成簇,并为每个簇构建完整的de Bruijn图。每个簇代表给定基因(或共享共同序列的一组基因)的完整转录复杂性。Chrysalis随后将完整的读取集分配给这些不相交的图。
(3) Butterfly接着并行处理各个图,追踪读取及读取对在图中的路径,最终报告另类剪接异构体的全长转录本,并区分出对应于旁系同源基因的转录本。
Trinity发表于《Nature Biotechnology》(顶刊)杂志。我们关于转录组组装和下游分析的协议发表在《Nature Protocols》(顶刊)杂志上,尽管总是在Trinity网站上提供最新的教学材料。
https://github.com/trinityrnaseq/trinityrnaseq #官网
更多详情,请访问:http://trinityrnaseq.github.io
#下载安装包
wget -c https://github.com/trinityrnaseq/trinityrnaseq/releases/download/Trinity-v2.15.1/trinityrnaseq-v2.15.1.FULL_with_extendedTestData.tar.gz #带有实例数据
wget -c https://github.com/trinityrnaseq/trinityrnaseq/releases/download/Trinity-v2.15.1/trinityrnaseq-v2.15.1.FULL.tar.gz
#解压
tar -zxvf trinityrnaseq-v2.15.1.FULL_with_extendedTestData.tar.gz
#make
#Trinity assembles transcript sequences from Illumina RNA-Seq data.
#Build Trinity by typing 'make' in the base installation directory.
cd trinityrnaseq-v2.15.1
make
#测试,在这个目录
./trinityrnaseq-v2.15.1/sample_data/test_Trinity_Assembly
#First, execute 'runMe.sh' to run the Trinity assembly example.
To test abundance estimation as well, execute 'runMe.sh 1'
vim runMe.sh
#添加TRINITY_HOME信息
TRINITY_HOME=./trinityrnaseq-v2.14.0
#通过提供的脚本直接运行
bash runMe.sh
#Find assembled transcripts as: 'trinity_out_dir.Trinity.fasta'
# 依赖1 安装bowtie2
# http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml#building-from-source
wget https://sourceforge.net/projects/bowtie-bio/files/bowtie2/2.4.4/bowtie2-2.4.4-source.zip
unzip bowtie2-2.4.4-source.zip
make
make static-libs && make STATIC_BUILD=1
make sra-deps && make USE_SRA=1 # supports aligning SRA reads
# 依赖2 安装jellyfish
wget https://github.com/gmarcais/Jellyfish/releases/download/v2.3.0/jellyfish-2.3.0.tar.gz
sudo tar -xf jellyfish-2.3.0.tar.gz
cd jellyfish-2.3.0
./configure #安装到本目录
sudo make
sudo make install
#依赖3,4,比较像胶水,体量很小
## samtools
sudo apt install samtools #root傻瓜式配置,这四个依赖均可。
wget -c https://github.com/samtools/samtools/releases/download/1.17/samtools-1.17.tar.bz2
tar jxvf samtools-1.17.tar.bz2
mkdir samtoolslocation
cd samtools-1.17
./configure --prefix=./samtoolslocation #安装在本目录,并创建新文件夹
make
make install
# salmon
https://github.com/COMBINE-lab/salmon/releases/download/v1.10.0/salmon-1.10.0_linux_x86_64.tar.gz
或者conda install -c bioconda salmon #这个计算表达量,但是表达量也不用这个计算,版本低一点让trinity跑起来就行,conda安装一般版本较低
./Trinity -h
Trinity-v2.15.1 的使用说明如下:
## 必需参数:
- `--seqType `: 读取类型,('fa' 或 'fq')
- `--max_memory `: 建议 Trinity 使用的最大内存限制。以Gb的RAM提供,例如:`'--max_memory 10G'`
### 如果是成对的读取:
- `--left `: 左侧读取,一个或多个文件名(用逗号分隔,没有空格)
- `--right `: 右侧读取,一个或多个文件名(用逗号分隔,没有空格)
### 或者,如果是未配对的读取:
- `--single `: 单个读取,一个或多个文件名,逗号分隔(注意,如果单个文件包含配对,可以使用标志:`--run_as_paired`)
### 或者,
- `--samples_file `: 指示生物学重复关系的制表符分隔文本文件。例如:
```
cond_A cond_A_rep1 A_rep1_left.fq A_rep1_right.fq
cond_A cond_A_rep2 A_rep2_left.fq A_rep2_right.fq
cond_B cond_B_rep1 B_rep1_left.fq B_rep1_right.fq
cond_B cond_B_rep2 B_rep2_left.fq B_rep2_right.fq
```
如果是单端而不是双端,则将上面的第4列留空。
## 杂项:
- `--SS_lib_type `: 链特异性RNA-Seq读取方向。如果是成对的:RF或FR,如果是单个的:F或R。(dUTP方法 = RF)查看网站文档。
- `--CPU `: 使用的CPU数量,默认为2
- `--min_contig_length `: 报告的最小组装连锁长度(默认=200,必须>=100)
- `--long_reads `: 包含经过错误校正或循环共识(CCS)的pac bio读取的fasta文件(**注意:这是一个实验参数**,此功能仍在开发中)
- `--genome_guided_bam `: 基因组引导模式,提供坐标排序的bam文件路径。(参见`--show_full_usage_info`下的基因组引导参数部分)
- `--long_reads_bam `: 包含用于基因组引导Trinity的长读取(bam文件包含对基因组进行比对的经过错误校正或循环共识(CCS)的pac bio读取)
- `--jaccard_clip`: 选项,如果你有成对读取并且你预期有高基因密度并且UTR重叠,设置此选项(对读取使用FASTQ输入文件格式)。(注意:jaccard_clip是一个昂贵的操作,所以除非因为没有它而发现过多的融合转录本,否则请避免使用它。)
- `--trimmomatic`: 运行Trimmomatic来质量修剪读取,见`--quality_trimming_params`了解详细设置。
- `--output `: 输出目录的名称(如果不存在将会创建)。默认(您当前的工作目录:“/new2pan/xyy230105/240121wuweizi_ke_zhuanluzu/007mcmctree/trinity_out_dir” 注意:名称中必须包含'trinity'作为安全预防措施!)
- `--full_cleanup`: 仅保留Trinity fasta文件,重命名为`${output_dir}.Trinity.fasta`
- `--cite`: 显示Trinity文献引用
- `--verbose`: 在运行过程中提供额外的作业状态信息。
- `--version`: 报告Trinity版本(Trinity-v2.15.1)并退出。
- `--show_full_usage_info`: 显示运行Trinity的更多选项(专家使用)。
*注意,
典型的Trinity命令可能是:
```
Trinity --seqType fq --max_memory 50G --left reads_1.fq --right reads_2.fq --CPU 6
```
(如果您有多个样本,请使用`--samples_file`...详情请见上文)
对于基因组引导的Trinity,请提供坐标排序的bam:
```
Trinity --genome_guided_bam rnaseq_alignments.csorted.bam --max_memory 50G --genome_guided_max_intron 10000 --CPU 6
```
有关示例数据和示例Trinity执行的`runMe.sh`,请参见:`/new2pan/xyy230105/230817p450jinhuawenxianjishuluxian/001p450apps/trinityrnaseq-v2.15.1/sample_data/test_Trinity_Assembly/`
更多详情,请访问:http://trinityrnaseq.github.io
使用过滤后的二代测序数据,详见fastp使用。fastp安装及使用-fastp v0.23.4(bioinfomatics tools-002https://blog.csdn.net/weixin_44874487/article/details/136227247?spm=1001.2014.3001.5501
Trinity --seqType fq --left reads_1.fq --right reads_2.fq --CPU 6 --max_memory 20G --output ./trinity_out_dir_XX
#Find assembled transcripts as: 'trinity_out_dir/Trinity.fasta'
#Use the documentation links in the right-sidebar to navigate this documentation, and contact our Google group for technical support.
#一般默认模式参数适用于大多数情况,默认即可
--output 输出文件前缀,需包含trinity字符,一般默认本目录即可
多组学的时代,学会转录组分析是必备毕业技能呐!学会转录本组装,助力发表SCI!!!
冗余:组装出的Unigene的数量大大超过基因数,一般植物的基因数量为4w-5w,过多就是冗余!
冗余的来源:(1) 可变剪切;(2)测序错误引入的“新” 转录本(所以要fastp过滤数据!)
冗余的最大影响:导致多重比对,给定量带来挑战,定量不准!
去冗余方法
(1)筛选同一基因的最长转录本作为unigene
(2)软件:CD-HIT等软件通过聚类筛选unigene
cd-hit安装与使用-cd-hit v4.8.1(bioinfomatics tools-005)
# 1.提取最长转录本
perl ./trinityrnaseq-v2.15.1/util/misc/get_longest_isoform_seq_per_trinity_gene.pl \
./trinity_out_dir/Trinity.fasta > ./trinity_out_dir/unigene1.fasta
# 2.软件聚类去冗余
cd-hit-est -i ./trinity_out_dir/Trinity.fasta -o output-cdhit -T 1 -M 1000
perl ./trinityrnaseq-v2.15.1/util/misc/fasta_seq_length.pl ./trinity_out_dir/Trinity.fasta > ./trinity_out_dir/length.txt
Trinity can be referenced as:
Protocol for using Trinity for de novo transcriptome assembly and downstream analyses:
Performance tuning of Trinity is described in:
Exploration of Trinity algorithm development for use on Cray supercomputers:
李思程,冯梦凡,杨细平.甘蔗属及其近缘属代表性种质的转录组比较分析[J].基因组学与应用生物学,2023,42(12):1323-1337.DOI:10.13417/j.gab.042.001323.
陈思远. 大规模转录组数据的整合分析方法和平台[D].西北农林科技大学,2022.DOI:10.27409/d.cnki.gxbnu.2021.000104.
李方东. 茶树转录组组装评估与多组学生物信息平台开发[D].安徽农业大学,2022.DOI:10.26919/d.cnki.gannu.2021.000002.