'+':機能既知の条件=true かつ 推定機能の条件=false '?':機能既知の条件=true かつ 推定機能の条件=true 'U':機能既知の条件=falseちなみにSwiss-prot rel. 38での数の内訳は、
'+' :63169 (78.9 %) '?' : 6557 ( 8.1 %) 'U' :10274 (12.8 %) total:80000になります。
機能既知の条件
次の3つの条件のどれかがあてはまれば、既知とします。
"Hypothetical protein", "Transmembrane", "Inner membrane", "Repeat", "Polymorphism", "Signal", "3D-structure", "Coiled coil", "Multigene family", "Antigen"
例えば、以下のようなDESCRIPTIONはfunctionの情報を含んでいないと 考えられます。
DE APAG PROTEIN. DE 21.1 KD PROTEIN IN PANB-HTRE INTERGENIC REGION. DE HYPOTHETICAL 24.8 KD PROTEIN IN DJLA-RLUA INTERGENIC REGION. DE 10 KD PROTEIN PRECURSOR (CLONE PSAS10). DE 110 KD ANTIGEN (PK110) (FRAGMENT). DE PROTEIN Z600よって、これらから、informativeでない語、例えば"PROTEIN", "INTERGENIC", "REGION", "CLONE", "FRAGMENT"などを全て除き、それでも残った文字をinformativeな文字とします。 この条件を決めるのは実際には大変煩雑で、informativeでないと思われる DESCRIPTIONの実例を見ながら試行錯誤的に決めましたが、まだ改良の余地は あると思います。DEの文字列を引数としてinformativeな部分だけを返す perlの関数は以下のようになります。
sub Get_Informative_String{
local($inputstr) = $_[0];
## $_[1] : GENE NAME Array (reference);
local($g);
$inputstr =~s/\.$//g;
foreach $g (@{$_[1]}) { $inputstr =~s/$g //; $inputstr =~s/$g$//; }
$inputstr =~s/HYPOTHETICAL//g;
$inputstr =~s/PUTATIVE//g;
$inputstr =~s/PROBABLE//g;
$inputstr =~s/PRECURSOR//g;
$inputstr =~s/FROM//g;
$inputstr =~s/UNKNOWN//g;
$inputstr =~s/ANTIGEN//g;
$inputstr =~s/FRAGMENT//g;
$inputstr =~s/CLONE//g;
$inputstr =~s/GENE//g;
$inputstr =~s/ .{1,10}-.{1,10} INTERGENIC REGION\s?\(?.*\)?//g;
$inputstr =~s/PROTEIN IN .{1,15}REGION\s?\(?.*\)?//g;
$inputstr =~s/IN CHROMOSOME//g;
$inputstr =~s/IN .{0,15}CHROMOSOME//g;
$inputstr =~s/PROTEIN//g;
$inputstr =~s/[0-9]+\.[0-9] KD//g;
$inputstr =~s/[0-9]+ KD//g;
$inputstr =~s/\(ORF.+\)//g;
$inputstr =~s/-LIKE//g;
$inputstr =~s/LIKE//g;
$inputstr =~s/INTERGENIC//g;
$inputstr =~s/REGION//g;
$inputstr =~s/LARGE//g;
$inputstr =~s/SMALL//g;
$inputstr =~s/SUBUNIT//g;
$inputstr =~s/VERY//g;
$inputstr =~s/CHAIN//g;
$inputstr =~s/SPOTS \w+\/\w+\/\w+\/\w+\/\w+//g;
$inputstr =~s/SPOTS \w+\/\w+\/\w+\/\w+//g;
$inputstr =~s/SPOTS \w+\/\w+\/\w+//g;
$inputstr =~s/SPOTS \w+\/\w+//g;
$inputstr =~s/\(SPOT.+\)//g;
$inputstr =~s/2D-PAGE SPOTS//g;
$inputstr =~s/2D-PAGE//g;
$inputstr =~s/2D_\w+ //g;
$inputstr =~s/HOMOLOG//g;
$inputstr =~s/HOMOLOGY//g;
$inputstr =~s/ IN //g;
$inputstr =~s/\W//g;
$inputstr =~s/\d//g;
return($inputstr);
}
Swiss-protのマニュアル "How is biochemical information assigned to sequence entries ?" (http://www.expasy.ch/cgi-bin/lists?annbioch.txt)によれば、全ゲノム データのannotationについて、以下のような場合分けがしてあります。
(III) Protein sequence data from translation of genome sequencing data
1. identical to an existing sequence in SWISS-PROT from the same organism,
2. identical to an existing sequence in SWISS-PROT from a different
organism which may or may not be related
3. strong similarity (i.e. many residues are conserved residues), over the
entire sequence, to an existing entry (from a related or different
organism)
4. strong similarity only at regions in the sequence (from same, related
or different organism)
5. some similarity to one or more existing entries
6. no similarity to any existing entries
このうち、ケース1,2は既に同一の配列が登録されていた場合であり、
そのannotationは実験的根拠がある場合が高いと思われます。
ケース3-6は、同一の配列がSwiss-protに登録してなかった場合であり、
これらについてのannotationは相同性のあるエントリから推察されたもの
になるはずです。このドキュメントの例によると、
以下のような形になっているようです。
CASE 3 4 5 6 DE PROBABLE PROBABLE PUTATIVE HYPOTHETICAL KW - Hypothetical Hypothetical Hypotheticalよって、次の2つのどちらかを満たす場合、単なる相同性だけで 機能のannotationがされたとします(推定機能の条件)。