TEsorter:TE的分類和可視化

來(lái)源于:https://github.com/zhangrengang/TEsorter
TE的鑒定可以使用LTRreviewer 或/和 repeatMasker,此處是對(duì)鑒定的TE進(jìn)行分類和可視化。
實(shí)質(zhì)是對(duì)TE的進(jìn)一步分類,因?yàn)槟壳暗腡E分類比較粗淺Copia和Gypsy,實(shí)質(zhì)上可以分的更加詳細(xì)。
TEsorter只是分類器,其實(shí)是基于dante開(kāi)發(fā)的。分類的依據(jù)數(shù)據(jù)庫(kù)可以是REXdb或GyDB,REXdb的分類更加詳細(xì),所以TEsorter作者推薦使用這個(gè)庫(kù)。

dante本身就是用于基于domain的轉(zhuǎn)座子注釋工具。dante github

不同數(shù)據(jù)庫(kù)對(duì)Copia的分類,來(lái)源于REXdb論文

image.png

不同數(shù)據(jù)庫(kù)對(duì)Gypsy的分類
image.png

Copia包括這些小類Ale , AlesiaAlesia, AngelaAngela, BiancaBianca, BrycoBryco, LycoLyco, Gymco I–IV, IkerosIkeros, IvanaIvana, OsserOsser, SIRESIRE, TARTAR, and Tork clades and the
Gypsy包括CRM, ChlamyvirChlamyvir, GaladrielGaladriel, Tcn1Tcn1, ReinaReina, TekayTekay, AthilaAthila, Tat I–III, OgreOgre, RetandRetand, PhygyPhygy, and Selgy clades.

TEsorter把Copia和Gypsy分類為如下:

  • capsid protein (GAG),
  • aspartic proteinase(AP), 或者PROT
  • integrase (INT),
  • reverse transcriptase (RT)
  • RNase H (RNaseH) 或者RH

提取的時(shí)候注意使用的數(shù)據(jù)庫(kù)不同關(guān)鍵詞略有區(qū)別rexdb和gydb的域名有些不同:PROT(rexdb)=AP(gydb),RH(rexdb)=RNaseH(gydb)

安裝TEsorter

  • python >3
    • biopython: quickly install by pip install biopython or conda install biopython
    • xopen: quickly install by pip install xopen or conda install xopen
  • hmmscan 3.3x: be compatible with HMMER3/f database format. quickly install by conda install hmmer
  • blast+: quickly install by conda install blast
  • TEsorter:
git clone https://github.com/zhangrengang/TEsorter
cd TEsorter
python setup.py install

直接使用conda安裝也可以conda install -c bioconda tesorter

測(cè)試TEsorter

TEsorter TEsorter/test/rice6.9.5.liban

使用參數(shù)講解

  • -p 24 cpu數(shù)量
  • -db rexdb-plant 植物數(shù)據(jù)庫(kù) ,也可以是gydb
  • -st nucl 默認(rèn)是nucl,可選值是:nucl,prot 分別表示DNA nuclear和蛋白質(zhì)protein。
  • -pre prefix 指定輸出文件的前綴

從基因組中提取 TE 序列用于 TEsorter

當(dāng)您只有基因組序列時(shí),以下是從廣泛使用的軟件的輸出中提取 TE 序列的示例。

  1. 從RepeatMasker輸出中提取所有 TE 序列:
#基因組RepeatMasker的下游分析,TE的分類

#指定RepeatMasker的輸出文件所在的路徑里的基因組.out文件
genome_out="/share/home/repeatsequence/Repeat_all_result/C.s.genome.fa.out"
#基因組位置
genome="/share/home/repeatsequence/Repeat_all_result/C.s.genome.fa"
#指定輸出的前綴
prefix="C.s"
pwd="/share/home/TEsort"

cd ${pwd}
if ! [ -e Genome_TEsort ];then
    mkdir Genome_TEsort
fi
cd Genome_TEsort

# run RepeatMasker, which will generate a *.out file.
#RepeatMasker [options] genome.fa

# extract sequences
RepeatMasker.py out2seqs $genome_out $genome > ${prefix}.whole_genome_te.fa

#獲取分類信息(計(jì)算非常快)
TEsorter ${prefix}.whole_genome_te.fa -db rexdb-plant -p 20

#提取domains,此處是提取所有的。 也可以只提取一種,例如GAG 或PROT,此處只提取保守的三種RH,RT,INT
concatenate_domains.py ${prefix}.rexdb-plant.cls.pep INT > ${prefix}.rexdb-plant.cls.pep.INT.aln
concatenate_domains.py ${prefix}.rexdb-plant.cls.pep TPase > ${prefix}.rexdb-plant.cls.pep.TPase.aln
cat ${prefix}.rexdb-plant.cls.pep.INT.aln ${prefix}.rexdb-plant.cls.pep.TPase.aln > ${prefix}.rexdb-plant.cls.pep.INT_TPase.faa
mafft --auto ${prefix}.rexdb-plant.cls.pep.INT_TPase.faa > ${prefix}.rexdb-plant.cls.pep.INT_TPase.aln

#構(gòu)建進(jìn)化樹(shù)
iqtree2 -s ${prefix}.rexdb-plant.cls.pep.INT_TPase.aln -B 1000 -T 20 -m MFP --bnni
#進(jìn)化樹(shù)的可視化(可視化可能會(huì)失敗)
LTR_tree.R ${prefix}.rexdb-plant.cls.pep.INT_TPase.aln.treefile ${prefix}.rexdb-plant.cls.tsv ${prefix}.rexdb-plant.cls.pep.INT_TPase.aln.pdf
  1. 從LTR_retriever輸出中提取所有完整的 LTR-RTs 序列:
run LTR_retriever, which generate two *.pass.list files.

LTR_retriever -genome genome.fa [options]
自動(dòng)化腳本修改前3行的參數(shù)即可運(yùn)行

#用于LTR-RTs的下游分析,TE的分類
LTR-RTs_genome="/share/home/LTR/C.s.genome.chr.fa" #指定LTRreviewer的輸出文件所在的路徑里的基因組文件
prefix="C.s" #指定輸出的前綴

if ! [ -e TEsort ];then
    mkdir TEsort
fi
cd TEsort

LTR_retriever.py get_full_seqs ${LTR-RTs_genome} >${prefix}.ltr.fa
#獲取LTR-RTs的分類信息(計(jì)算非??欤?TEsorter ${LTR-RTs_genome}.ltr.fa -db rexdb-plant -p 20

#提取domains,此處是提取所有的。 也可以只提取一種,例如GAG 或PROT或者RH
concatenate_domains.py ${prefix}.ltr.fa.rexdb-plant.cls.pep RH RT INT > ${prefix}.ltr.fa.rexdb-plant.cls.pep.full.aln
#構(gòu)建進(jìn)化樹(shù)
iqtree2 -s ${prefix}.ltr.fa.rexdb-plant.cls.pep.full.aln -B 1000 -T 20 -m MFP --bnni

#進(jìn)化樹(shù)的可視化(可視化可能會(huì)失敗)
LTR_tree.R ${prefix}.ltr.fa.rexdb-plant.cls.pep.full.aln.treefile ${prefix}.ltr.fa.rexdb-plant.cls.tsv ${prefix}.ltr.fa.rexdb-plant.cls.pep.full.aln.treefile.pdf

domains的不同種類的保守型不一致,RH RT INT的保守性比較好,所以一般用來(lái)構(gòu)建進(jìn)化樹(shù)。GAG和PROT的保守性就沒(méi)有前3者的穩(wěn)定。來(lái)源于TEsorter和REXdb論文.


支持對(duì) TE 多蛋白序列(示例)或基因蛋白序列進(jìn)行分類:

TEsorter RepeatPeps.lib -st prot -p 20

從1.4版本可以直接使用基因組來(lái)鑒定

TEsorter genome.fasta -genome -p 20

輸出結(jié)果

rice6.9.5.liban.rexdb.domtbl        HMMScan raw output
rice6.9.5.liban.rexdb.dom.faa       protein sequences of domain, which can be used for phylogenetic analysis.
rice6.9.5.liban.rexdb.dom.tsv       inner domains of TEs/LTR-RTs, which might be used to filter domains based on their scores and coverages.
rice6.9.5.liban.rexdb.dom.gff3      domain annotations in `gff3` format
rice6.9.5.liban.rexdb.cls.tsv       TEs/LTR-RTs classifications
    Column 1: raw id
    Column 2: Order, e.g. LTR
    Column 3: Superfamily, e.g. Copia
    Column 4: Clade, e.g. SIRE
    Column 5: Complete, "yes" means one LTR Copia/Gypsy element with full GAG-POL domains.
    Column 6: Strand, + or - or ?
    Column 7: Domains, e.g. GAG|SIRE PROT|SIRE INT|SIRE RT|SIRE RH|SIRE; `none` for pass-2 classifications
rice6.9.5.liban.rexdb.cls.lib      fasta library for RepeatMasker
rice6.9.5.liban.rexdb.cls.pep    the same sequences as `rice6.9.5.liban.rexdb.dom.faa`, but id is changed with classifications.

根據(jù)需要提取對(duì)應(yīng)的domain來(lái)進(jìn)行比對(duì)后構(gòu)建進(jìn)化樹(shù)

提取的時(shí)候注意使用的數(shù)據(jù)庫(kù)不同關(guān)鍵詞略有區(qū)別rexdb和gydb的域名有些不同:PROT(rexdb)=AP(gydb),RH(rexdb)=RNaseH(gydb)
我此處使用的是rexdb,所以提取所有domain的時(shí)候使用的是PROT和RH

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容