0. 简介:
MUFoldSS是预测蛋白质二级结构的软件,但是序列的长度要 <= 700。
详情见文献:Fang, Chao, Yi Shang, and Dong Xu. MUFold-SS: New deep inception-inside-inception networks for protein secondary structure prediction. PROTEINS: Structure, Function, and Bioinformatics 86, no. 5 (2018): 592-598.
Psi-Blast:序列比对,寻找蛋白质的远亲,比Protein Blast在寻找遥远的进化关系方面更加敏感。
详情见Blast官网:https://blast.ncbi.nlm.nih.gov/Blast.cgi
HHblits:一种新的序列搜寻方法用于鉴别数据库中相似序列的蛋白。
详情见文献:Remmert, Michael et al. “HHblits: lightning-fast iterative protein sequence searching by HMM-HMM alignment.” Nature methods vol. 9,2 173-5. 25 Dec. 2011, doi:10.1038/nmeth.1818
需要注意的是:
该软件的输入有3个:序列fasta文件,Psi-Blast的pssm文件和HHblits的hhm文件。因而下面先介绍Psi-Blast和HHblits软件的安装与运行,再介绍MUFoldSS的安装与运行。
1. Psi-Blast
1.1 下载:
https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/
1.2 安装:
解压:tar -zxvf ncbi-blast-2.13.0+-x64-linux.tar.gz
1.3 运行:
切换到bin/
目录下,直接运行./psiblast -h
查看帮助文档
1.4 备注:
具体到本实验中,先构建库文件(将待建库的文件放到一个fasta文件中(以lib.fasta
为例,同时假定也在bin/
目录下,或者指定lib.fasta
所在位置),在bin/
目录下:./makeblastdb -in lib.fasta -parse_seqids -hash_index -dbtype prot
);
建库完成之后,bin/
目录下运行./psiblast -query text.fasta -db lib.fasta -num_iterations 3 -evalue 0.001 -out_ascii_pssm outfile.pssm
参数解释:-query text.fasta
是用于比对的序列文件;-db lib.fasta
是用于比对的库文件;-num_iterations 3
表示迭代三次;-out_ascii_pssm outfile.pssm
表示输出文件为pssm
格式,文件名称为outfile.pssm
;
2. HHblits
2.1下载及安装:
直接参考github上的安装教程即可:https://github.com/soedinglab/hh-suite
所需的库文件 (如下图所示,任选其一):
2.2 运行命令:
hhblits -i <input-file> -ohhm <result-file> -n 1 -d <database-basename>
参数说明:-i
输入文件;-ohhm
输出hmm
格式的文件;-n
迭代次数,默认是2;-d
数据库名称。详情见./hhblits --help
3. MUFoldSS
3.1 下载:
从 http://dslsrv8.cs.missouri.edu/~cf797/MUFoldSS/download.html 下载所需的版本,此处以3.0为例。
注意:目前(2022-12-09)上述链接已失效,所以我将之前下载的源码放在了这里:https://download.csdn.net/download/weixin_44065416/87260198?spm=1001.2014.3001.5503
(如要白嫖,请评论区留邮箱)。
3.2 安装:
下载完解压即可 tar -zxvf StandAlone_withProfiles.tar.gz
3.3 运行:
解压完成之后StandAlone_withProfiles/
目录下有一个runMUFOLDSS_WithProfiles
文件,如果要用该文件运行程序的话,需要将execdir
和datadir
的路径改为自己当前的安装路径 (PS:因为runMUFOLDSS_WithProfiles
使用Shell写的,我看不太懂,所以就自己用python重新写了一个名为runMUFoldSS.py
的运行脚本,如下)。
import os
import sys
import time
fasta_file = sys.argv[1] ## 输入蛋白序列的 fasta文件 ()
pro_file = sys.argv[2] ## 输入第一步 Psi-Blast 得到的 .pssm 文件
hhm_file = sys.argv[3] ## 输入第二步 hhblits 得到的 .hmm 文件
model_file = 'data/model.h5' ## 模型文件,在 data/ 目录下
outfile = sys.argv[4] ## 输出文件
print('Start: %s' % time.asctime(time.localtime(time.time())))
command_line = 'python bin/executable_withHHBlits.py -s '+fasta_file+' -p '+pro_file+' -m '+hhm_file+' -w '+model_file+' > '+outfile
os.system(command_line)
print('End: %s' % time.asctime(time.localtime(time.time())))
上述脚本运行方法:python runMUFOLDSS_WithProfiles.py prot.fasta prot.pssm prot.hmm outfile.txt