fasta格式
在生物信息学中,FASTA格式(又称为Pearson格式),是一种基于文本用于表示核苷酸序列或氨基酸序列的格式。在这种格式中碱基对或氨基酸用单个字母来编码,且允许在序列前添加序列名及注释。
格式
序列文件的第一行是由大于号">"或分号";"打头的任意文字说明(习惯常用">"作为起始),用于序列标记。从第二行开始为序列本身,只允许使用既定的核苷酸或氨基酸编码符号(参见下表)。通常核苷酸符号大小写均可,而氨基酸常用大写字母。使用时应注意有些程序对大小写有明确要求。文件每行的字母一般不应超过80个字符。
下面是FASTA格式的氨基酸序列实例:
>MCHU - Calmodulin - Human, rabbit, bovine, rat, and chicken ADQLTEEQIAEFKEAFSLFDKDGDGTITTKELGTVMRSLGQNPTEAELQDMINEVDADGNGTID FPEFLTMMARKMKDTDSEEEIREAFRVFDKDGNGYISAAELRHVMTNLGEKLTDEEVDEMIREA DIDGDGQVNYEEFVQMMTAK*
FASTA格式支持的核苷酸代码如下:
核苷酸代码 |
意义 |
A |
Adenosine |
C |
Cytosine |
G |
Guanine |
T |
Thymidine |
U |
Uracil |
R |
G A (puRine) |
Y |
T C (pYrimidine) |
K |
G T (Ketone) |
M |
A C (aMino group) |
S |
G C (Strong interaction) |
W |
A T (Weak interaction) |
B |
G T C (not A) (B comes after A) |
D |
G A T (not C) (D comes after C) |
H |
A C T (not G) (H comes after G) |
V |
G C A (not T, not U) (V comes after U) |
N |
A G C T (aNy) |
X |
masked |
- |
gap of indeterminate length |
FASTA格式支持的氨基酸代码如下:
氨基酸代码 |
意义 |
A |
Alanine |
B |
Aspartic acid or Asparagine |
C |
Cysteine |
D |
Aspartic acid |
E |
Glutamic acid |
F |
Phenylalanine |
G |
Glycine |
H |
Histidine |
I |
Isoleucine |
K |
Lysine |
L |
Leucine |
M |
Methionine |
N |
Asparagine |
O |
Pyrrolysine |
P |
Proline |
Q |
Glutamine |
R |
Arginine |
S |
Serine |
T |
Threonine |
U |
Selenocysteine |
V |
Valine |
W |
Tryptophan |
Y |
Tyrosine |
Z |
Glutamic acid or Glutamine |
X |
any |
* |
translation stop |
- |
gap of indeterminate length |
最常见的FASTA格式
Fasta格式首先以大于号“>”开头,接着是序列的标识符“gi|187608668|ref|NM_001043364.2|”,然后是序列的描述信息。换行后是序列信息,序列中允许空格,换行,空行,直到下一个大于号,表示该序列的结束???。
所有来源于NCBI的序列都有一个gi号“gi|gi_identifier”,gi号类似与数据库中的流水号,由数字组成,具有绝对唯一性。一条核酸或者蛋白质改变了,将赋予一个新的gi号(这时序列的接收号可能不变)。
gi号后面是序列的标识符,下表是来源于不同数据库的标识符的说明。标识符由序列来源标识、序列标识(如接收号、名称等)等几部分组成,他们之间用“|”隔开,如果某项缺失,可以留空但是“|”不能省略。如上例中标识符为“ref|NM_001043364.2|”,表示序列来源于NCBI的参考序列库,接收号为“NM_001043364.2”。
文件中和每一行都不要超过80个字符(通常60个字符)。
对于核酸序列,除了为大家所熟知的A、C、G、T、U外,R代表G或A(嘌呤);Y代表T或C(嘧啶);K代表G或T(带酮基);M代表A或C(带氨基);S代表G 或C(强);W代表A或T(弱);B代表G、T或C;D代表G、A或T;H代表A、C或T;V代表G、C或A;N代表A、G、C、T中任意一种。
Database Name数据库名称 |
Identifier Syntax 标识符 |
GenBank |
gb|accession|locus |
EMBL Data Library |
emb|accession|locus |
DDBJ, DNA Database of Japan |
dbj|accession|locus |
NBRF PIR |
pir||entry |
Protein Research Foundation |
prf||name |
SWISS-PROT |
sp|accession|entry name |
Brookhaven Protein Data Bank |
pdb|entry|chain |
Patents |
pat|country|number |
GenInfo Backbone Id |
bbs|number |
General database identifier |
gnl|database|identifier |
NCBI Reference Sequence |
ref|accession|locus |
Local Sequence identifier |
表:序列来源的数据库与对应的标识符
数据库的冗余(redundancy)
DNA和蛋白质数据库中的很多记录是属于同一基因和蛋白质家族,或在不同生物体上发现的同源基因。不同的研究机构可能向数据库发送了相同的序列数据,如果没有被检查出来,则这些记录或多或少地紧密相关。当然,这些记录如果的确非常相近,可以被认定为它们是相同序列,但一些显著的差异可能是由于基因组多样性的结果。
冗余数据至少可能导致以下3个潜在的错误
一是如果一组DNA或氨基酸序列包含了大量非常相关序列族,则相应的统计分析将偏向这些族,在分析结果中,这些族的特性被夸大。
二是序列间不同部分的显著相关可能是在数据样本抽样时是有偏的和不正确的。
三是如果这些数据是被用于预测,则这些序列将使预测方法—如人工智能方法—发生偏离。
非冗余(non-redundant, nr)
生物数据非常复杂,它远非“冗余”二字可以准备描述。例如,同一位点上的2个等位基因是不是冗余的?同一生物体内的2个同功酶是否冗余?因此,过于苛刻地去除“太过于相似的序列”可能导致一些有价值的信息被删除,应在数据规模和非冗余之间找到一个合理的平衡点。
序列数据的偏差或人为假象(artifacts) 主要来自实验过程,这与其它科学数据的情况相同。这些人为假象主要来自以下几个方面:
(1) 载体序列污染:在测定序列等实验过程中,载体序列可能造成污染,致使序列记录数据中包含了载体序列。
(2) 异源(heterologous)序列污染:有研究表明一些人类cDNA测序结果在实验过程中被酵母和细菌序列污染。
(3) 序列的重排和缺失。
(4) 重复因子污染:cDNA克隆方法有时会受到逆转录因子(如Alus)的影响 。
(5) 测序误差和自然多态性:测序过程存在一定的误差概率。