背景
MCScanx:Multiple Collinearity Scan toolkit,MCScanX 是检测基因共线性和进化分析的软件。需要使用基因集进行自身比对。MCScanX 的输入需要两个文件:*.blast 和 *.gff。文件前缀名需要完全一致。*.blast 文件可以直接用 all-vs-all 出结果。首先将预测的蛋白质文件的 fasta文件整合一下。另外的列表文件,需要从 gff 文件中提取获得。一共分为四列,分别是第一列是物种名和染色体编号,第二列是基因号,第三列是起始位置,第四列是终止位置。
网址:https://github.com/wyp1125/MCScanx
一、安装 mscanx
代码语言:javascript复制git clone https://github.com/wyp1125/MCScanX.git
cd MCScanx
make
准备输入文件
代码语言:javascript复制#下载参考序列与gff文件
#https://www.ncbi.nlm.nih.gov/genome/?term=Klebsiella pneumoniae
wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/240/185/GCF_000240185.1_ASM24018v2/GCF_000240185.1_ASM24018v2_genomic.fna.gz
wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/240/185/GCF_000240185.1_ASM24018v2/GCF_000240185.1_ASM24018v2_genomic.gff.gz
wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/240/185/GCF_000240185.1_ASM24018v2/GCF_000240185.1_ASM24018v2_protein.faa.gz
#处理gff或者bed格式文件
perl -F't' -lane 'next unless $F[2] eq "CDS";print join qq{t},$F[0],$F[-1]=~s/ID=cds-([^;] ).Parent=.*$/$1/r,$F[3],$F[4]' GCF_000240185.1_ASM24018v2_genomic.gff >ref.gff
grep ">" mgh78578.faa | awk '{print "contigt"$1"t"$3"t"$5}' | sed -e 's/>//' >mgh78578.gff
#合并文件
cat GCF_000240185.1_ASM24018v2_protein.faa mgh78578.faa >all.faa
cat cat ref.gff mgh78578.gff >test/all.gff
二、运行软件
代码语言:javascript复制#blast比对
makeblastdb -in all.faa -dbtype prot -out all -parse_seqids
blastp -query all.faa -db all -out all.blast -evalue 1e-10 -num_threads 12 -outfmt 6 -num_alignments 5
#运行结果
mkdir all;
mv all.blast all.gff all
~/biosoft/MCScanX/MCScanX all/all
*.collinearity: 成对的共线性区域
*.tandem: 串联基因
*.html: 共线性可视化的 html 文件,里面有很多小文件,文件名称是根据参考基因组染色体编号来的。
三、下游分析
代码语言:javascript复制#过滤duplicate_gene
~/biosoft/MCScanX/duplicate_gene_classifier all/all
#下游分析,将downstream_analyses程序拷贝至结果目录
#案例地址:https://img.yuanmabao.com/zijie/pic/2022/10/25/kn2bmgybfwo
#4 dual_synteny_plotter
java dual_synteny_plotter -g os_sb.gff -s os_sb.collinearity -c dot.ctl -o exam4.png
#5 Circle_plotter
java circle_plotter -g os_sb.gff -s os_sb.collinearity -c circle.ctl -o exam5.png
#6 Bar_plotter
java bar_plotter -g os_sb.gff -s os_sb.collinearity -c bar.ctl -o exam6.png
#7 add_kaks_to_synteny.pl
perl add_kaks_to_synteny.pl -i os_sb.collinearity -d cds_file -o exam7
#8 group_collinear_genes.pl
perl group_collinear_genes.pl -i os_sb.collinearity -o exam8.cluster
写在最后:有时间我们会努力更新的。大家互动交流可以前去论坛,地址在下面,复制去浏览器即可访问,弥补下公众号没有留言功能的缺憾。原地址暂未启用(bioinfoer.com)。
代码语言:javascript复制sx.voiceclouds.cn
有些板块也可以预设为大家日常趣事的分享等,欢迎大家来提建议。