Swiss-Prot and Pfam-A 介绍及本地化
文章仅是记录自己的学习使用,有错误请指出,我立刻改正
一、Swiss-Prot
参考:
https://www.jianshu.com/p/f80398cb9c97
https://zhuanlan.zhihu.com/p/108602863
https://www.liaochenlanruo.fun/post/e922.html
https://xuzhougeng.top/archives/Function-anotation-with-swiss-prot-database
https://github.com/xuzhougeng/myscripts/blob/master/annotation/add_annotation_from_dat.py
(一)Uniprot简介
Uniprot (Universal Protein )是包含蛋白质序列,功能信息,研究论文索引的蛋白质数据库,整合了包括EBI( European Bioinformatics Institute),SIB(the Swiss Institute of Bioinformatics),PIR(Protein Information Resource)三大数据库的资源。
- EBI( European Bioinformatics Institute):欧洲生物信息学研究所(EMBL-EBI)是欧洲生命科学旗舰实验室EMBL的一部分。位于英国剑桥欣克斯顿的惠康基因组校园内,是世界上基因组学领域最强的地带之一。
- SIB(the Swiss Institute of Bioinformatics):瑞士日内瓦的SIB维护着ExPASy(专家蛋白质分析系统)服务器,这里包含有蛋白质组学工具和数据库的主要资源。
- PIR(Protein Information Resource):PIR由美国国家生物医学研究基金会(NBRF)于1984年成立,旨在协助研究人员识别和解释蛋白质序列信息。
(二)Uniprot子库
- UniProtKB/Swiss-Prot(Protein knowledgebas (review)):高质量的、手工注释的、非冗余的数据库
- UniProtKB/TrEMBL(Protein knowledgebase (unreview)):自动翻译蛋白质序列,预测序列,未验证的数据库
- UniParc Sequence:非冗余蛋白质序列数据库
- UniRef Sequence clusters:聚类序列减小数据库,加快搜索的速度
- Proteomes Protein sets from fully sequenced genomes:为全测序基因组物种提供蛋白质组信息
通过EMBL,GenBank,DDBJ等公共数据库得到原始数据,处理后存入UniParc的非冗余蛋白质序列数据库。UniProt作为数据仓库,再分别给UniProtKB,Proteomes,UNIRef提供可靠的数据集。其中在UniProtKB数据库中Swiss-Prot是由TrEMBL经过手动注释后得到的高质量非冗余数据库,也是我们今后常用的蛋白质数据库之一。
Swiss-Prot旨在提供与高水平注释(例如,蛋白质功能,其域结构,翻译后修饰,变体等的描述)相关的可靠蛋白质序列,最小程度的冗余和高水平与其他数据库的集成级别。注释主要来自文献中的研究成果和E-value校验过计算分析结果,有质量保证的数据才被加入该数据库 。
(三)Swiss-Prot本地化
uniprot_sprot.fasta序列信息解读:
sp|Q6GZX4|001R_FRG3G Putative transcription factor 001R OS=Frog virus 3 (isolate Goorha) OX=654924 GN=FV3-001R PE=4 SV=1
MAFSAEDVLKEYDRRRRMEALLLSLYYPNDRKLLDYKEWSPPRVQVECPKAPVEWNNPPS.......
sp:Swiss-Prot数据库的简称
Q6GZX4:UniProt ID号
001R_FRG3G:UniProt 的登录号
Putative transcription factor 001R:蛋白质名称
OS=Frog virus 3 (isolate Goorha) :OS是Organism简称,Frog virus 3 为蛙病毒3型的拉丁文分类命名
OX=654924:Organism Taxonomy,也就是物种分类数据库Taxonomy ID
GN=FV3-001R:Gene name,基因名为FV3-001R
PE=4:Protein Existence,蛋白质可靠性,对应5个数字,数字越小越可靠:
#1:Experimental evidence at protein level
#2:Experimental evidence at tranlevel
#3:Protein inferred from homology
#4:Protein predicted
#5:Protein uncertain
SV=1:Sequence Version,序列版本号
本地化
wget ftp://ftp.uniprot.org/pub/databases/uniprot/current_release/knowledgebase/complete/uniprot_sprot.fasta.gz
gunzip uniprot_sprot.fasta.gz
diamond makedb --in uniprot_sprot.fasta --db uniprot_sprot
#可将原始序列删去,只保留uniprot_sprot.dmnd文件,减少空间使用
diamond blastx -q fasta_file -d uniprot_sprot -o diamond_output --evalue 1e-05 -p 10 --max-target-seqs 1
#输出结果解读:
TRINITY_DN21482_c0_g3_i1 sp|Q09818|YAC4_SCHPO 43.2 88 43 2 85 342 12 94 1.32e-19 86.3
TRINITY_DN21482_c1_g1_i1 sp|O95628|CNOT4_HUMAN 53.7 67 31 0 202 2 160 226 4.97e-19 82.0
TRINITY_DN21433_c0_g1_i17 sp|P47927|AP2_ARATH 52.5 345 86 10 1209 208 155 432 8.31e-87 276
TRINITY_DN21433_c0_g1_i5 sp|P47927|AP2_ARATH 53.1 341 83 11 1164 175 158 432 1.14e-88 278
diamond默认输出为outfmt6,其格式为:
1、qseqid means Query Seq - id ,qseqid指的是要查询/比对的序列
2、sseqid means Subject Seq - id,sseqid指的是目标序列。
3、pident means Percentage of identical matches,pident指的是完全匹配的比例
4、length means Alignment length,length指的是比对长度
5、mismatch means Number of mismatches, mismatch指的是没有匹配上的数量
6、gapopen means Number of gap openings, gapopen指的是 空位开放的数量
7、qstart means Start of alignment in query,qstart指的是查询比对的起始
8、qend means End of alignment in query,qend指的是查询比对的终止
9、sstart means Start of alignment in subject,sstart指的是比对在目标中的开始
10、send means End of alignment in subject,send指的是比对在目标中的结束
11、evalue means Expect value,evalue指的是阈值
12、bitscore means Bit score,bitscore指的是片段的分数
二、Pfam-A
结构域的不同组合方式产生的蛋白质在自然界中各种不同。因此蛋白结构域的鉴别对分析蛋白质的功能来说尤其重要。
蛋白结构域.png
Pfam是一个被广泛使用的蛋白家族结构域数据库,其依赖于多序列比对和隐马尔可夫模型(HMMs)鉴定一个或多个蛋白质功能结构域。
参考:
http://www.chenlianfu.com/?p=2274
https://www.yunbios.net/Pfam.html
(一)Pfam简介
Pfam数据库中,提供了以下3个不同层级蛋白质家族信息。
-
family 。每个family以PF编号**标识,family可以分为以下5种类型:
family_type - clans。对多个family进行相似性聚类,将具有相似的三维结构或者相同motif的family归为一个clan,每个clan以CL编号标识。
- proteones。物种的蛋白质组信息说明。查询蛋白质结构域,蛋白质结构域超级家族,物种蛋白质组信息。
Pfam-A:Pfam-A来自基础序列数据库Pfamseq,是根据最新的UniProtKB数据建立的。为高质量,手工确定的蛋白结构域数据。
Pfam-B为基于Pfam-A数据库自动注释得到的蛋白结构域数据库。
Pfam35.0.png
Pfam-A.dead.gz:已从数据库中删除的蛋白家族列表
Pfam-A.fasta.gz:每个Pfam-A家族的90%非冗余fasta格式序列合集。这些序列仅是模型命中的区域,不是全长蛋白质序列。
Pfam-A.full.gz:针对pfamseq/UniProtKB参考蛋白质组进行搜索,得到的curated家族的完全比对结果(在Pfam 29.0之前,该文件包含与整个UniProtKB的匹配)。
Pfam-A.full.uniprot.gz:针对UniProtKB进行搜索,得到的curated家族的完整比对结果。
Pfam-A.hmm.dat.gz:包含每个 Pfam-A 家族信息的数据文件
*Pfam-A.hmm.gz:Pfam HMM 库,用于结构域比对
具体信息查看:https://pfam-docs.readthedocs.io/en/latest/ftp-site.html
(二)Pfam-A本地化
###下载Pfam-A.hmm
wget ftp://ftp.ebi.ac.uk/pub/databases/Pfam/releases/Pfam35.0/Pfam-A.hmm.gz
gzip -d Pfam-A.hmm.gz
###下载hmmer
conda create -n hmmer
source activate hmmer
conda install -c bioconda hmmer
###比对结构域
hmmpress Pfam-A.hmm
hmmscan -o out.txt --tblout out.tbl --noali -E 1e-5 --cpu 1 Pfam-A.hmm fasta_file
#生成结果文件 out.txt 和 out.tbl
#out.txt 文件信息比较全面,但是不好阅读;
#out.tbl 文件则是表格形式的结果,是一般需要的结果。
#HMMER参数:
#Usage: hmmscan [-options] <hmmdb> <seqfile>
#-o FILE:将结果输出到指定的文件中。默认是输出到标准输出
#--tblout FILE:将蛋白质家族的结果以表格形式输出到指定的文件中。默认不输出该文件
#--noali:在输出结果中不包含比对信息。输出文件的大小则会更小
#--acc:在输出结果中包含 PF 的编号,默认是蛋白质家族的名称
#-E FLOAT:设定 E_value 阈值,推荐设置为 1e-5
#-T FLOAT:设定 Score 阈值
#--domE FLOAT:设定 E_value 阈值。该参数和 -E 参数类似,不过是 domain 比对设定的值
#--cpu:多线程运行的CPU。默认应该是大于1的,表示支持多线程运行。当并行数高于4的时候,会报错:Fatal exception (source file esl_threads.c, line 129)。这时,设置--cpu的值为1即可
输出结果解读:
有空再来补充