准备
1.基因组序列下载与注释,使用prokka进行注释,获得gff文件。
参考我前一篇:
autoprokka:使用prokka批量注释 - 简书 (jianshu.com)
2.roary软件的安装,使用conda/mamba:
mamba install -c bioconda roary
下载gbksplit脚本:
stevenjdunn/gbkSPLIT: Extracts genes using a list of locus tags from .gbk to logically named nucleotide .fasta's. (github.com)
解压备用。
开始
利用roary进行泛基因组分析:
roary gff/*.gff -f roaryoutput/ -e -n -r -p 64
结束以后获得gene_presence_absence.csv文件,打开,根据所用目标菌株的数量,在表格的第四列拉到那个数值的位置后,复制所有该数值对应的目标菌株的其中一个的对应loucus_tag到新建的文本文件中,比如:
保存为locus_tags.txt
之后,找到对应菌株的gbk文件,利用gbksplit脚本去提取所需的目标locus_tag的核酸序列到序列文件中:
gbksplit.py -i /path/to/input/locus_tags.txt -g /path/to/genbank/file.gbk -o /path/to/output_directory/
之后再把序列文件上传到ncbi进行blast筛选,选出特异性最好的一个或者多个,进行后续的验证即可。
补充
提取出来多条序列,单独上传NCBI进行blast比较麻烦,可以把所有fasta文件合并到一条(小于200条合一较好)一次上传NCBI进行blast。
TBtools序列合并
打开TBtools选择序列操作里面的合并与分割:
在左边设置输入文件和输出文件:
按Start开始即可。
多序列blast
打开NCBI blast,选择核酸blast,
选择上传合并的文件开始即可。