软件简介
MCScanX工具集对MCScan算法进行了调整,用于检测共线性和同线性区域,还增加了可视化和下游分析。。MCscanX有三个核心工具,以及12个下游分析工具。
软件安装
进入官网http://chibba.pgml.uga.edu/mcscan2/#tm,下载安装
1 unzip MCscanX.zip 2 cd MCScanX 3 make
软件使用
-
所需要文件
两个或多个物种的gff文件,蛋白序列(** 该软件最多能做5个物种的共线性)
-
第一步:构建索引,进行blastp比对
注意!这里是找at和vv两个基因组组内和组间的共线性,因为想同时知道物种内和物种间的共线性,所以在blast之前把at和vv的基因组facat到一起,既做database,又做query,如果只想知道组间的共线性,那么就任取一个基因组为database,另一个做query
注意! 如果一个基因有多个转录本,只选择注释中的第一条
1 ## 合并 2 cat at.fa vv.fa >>all.fa 3 4 ## 建库 5 makeblastdb -in all.fa -dbtype prot -out index/all -parse_seqids 6 7 ## 比对 8 blastp -query all.fa -db index/all -out all.blast -evalue 1e-5 -num_threads 10 -outfmt 6 -num_alignments 5
-
第二步:构建gff文件
注意:all.gff, all.blastp 前缀需要一样,并且在同一文件夹下
1 sp# gene starting_position ending_position
根据物种的gff3文件利用awk 快速得到MCscanX要求的gff文件
-
第三步:MCScanX寻找共线性区块
1 MCScanX ./all
-
结果文件
输出文件分为两个:
第一个是at_rice.collinearity, 记录着共线性区块(collinear blocks), 可以选择共线性区块基因大于10以上为可信区域
第二个是一个网页格式
-
输出共线性基因的位置信息
-
1 #!/usr/bin/env python 2 # _*_ coding: utf-8 _*_ 3 4 import sys,re 5 6 gene_info = {} 7 syn_info = {} 8 9 IN = sys.argv[1] ##*.gff 10 IN1 = sys.argv[2] ## *.collinearity 11 IN2 = sys.argv[3] ## number,int; 12 13 with open(IN) as f,\ 14 open(IN1) as f1,\ 15 open("%s_syn_region_info" %IN.strip(".gff"),"w") as o: 16 for i in f: 17 i=i.strip().split() 18 gene_info[i[1]] = [i[0],i[2],i[3]] 19 for x in f1: 20 if \'## Alignment\' in x: 21 res=x.strip() 22 if res not in syn_info: 23 syn_info[res] = [] 24 elif \'#\' not in x: 25 x=x.strip().split() 26 tem = x[-3]+"&&"+x[-2] 27 syn_info[res].append(tem) 28 for k,v in syn_info.items(): 29 num = re.search(r" N=(\d+) ",k).group(1) 30 if int(num) >= 10: 31 for n in v: 32 # print n 33 gene1 = n.split("&&")[0] 34 gene2 = n.split("&&")[1] 35 gene1_chr = gene_info[gene1][0] 36 gene1_start = gene_info[gene1][1] 37 gene1_end = gene_info[gene1][2] 38 gene2_chr = gene_info[gene2][0] 39 gene2_start = gene_info[gene2][1] 40 gene2_end = gene_info[gene2][2] 41 o.write("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n"%(gene1_chr,gene1,gene1_start,gene1_end,gene2,gene2_chr,gene2_start,gene2_end))
基因组共线性工具MCScanX使用说明
基因组共线性工具MCScanX使用说明
------END------
关注下方公众号可获得更多精彩