PDBとUniProtのエントリ数あれこれ

 PDB (Protein Data Bank) は実験的に決定されたタンパク質(など)の構造情報を提供するデータベースのこと,UniProt (Universal Protein resource) とはタンパク質の配列情報と機能アノテーションを提供するデータベースのことである.最近PDBの構造情報について,「ヒトのタンパクって何個くらいあるの?」とか「世のタンパク質のどのくらいの割合で構造がとれてるの?」とか良く聞かれるので,ちょっと調べてみた.

 ちなみにPDBの統計情報については,ウェブからある程度は見れるようになっている.

に行って,右上の方にある『PDB Statistics』をクリックすればいろいろ情報が取れるし,簡単な条件指定でエントリ数をかぞえるなら

  • 『there are XXXXX Structures』

の数字(XXXXX)をクリックして,Query Refinementsの条件のところをポチポチ押していけばいい.

 こんな感じの操作でヒトのタンパク質の数ぐらいならすぐ分かる.2012/7/24 ver. では,構造は全部で83,266個,うちタンパク質だけ(DNA・RNAやそのタンパク質との複合体などを除いたもの)の数は77,057個,さらにそのうちヒトのタンパク質(Homo sapiens only)は18,774個である.個人的には,意外と多い…という印象だ.

 さて,世のタンパク質(UniProt)の数に対してPDBがどれだけの割合でとれているのかを調べるには,実際の構造情報を使って調べる必要がある.とりあえず,PDBミラーリングダウンロードした.

rsync -a pdb.protein.osaka-u.ac.jp::ftp_data ./

 だいたい一晩で落とせると思う.83,266個の.pdbフラットファイルだけだと15GB,XMLやmmCIF形式,またbiological unitなど全部含めて146GBであった.

 この.pdbファイルに対して,Chainの情報を抽出したりChainに対応するUniProtIDの抽出をしたりを,テキトウなスクリプトで実行した..pdbはあんまり綺麗でないのでパースに失敗したりしてるのもあって概算でしか出せてないが,大体以下のような数字が分かった.

  • UniProtIDを持つPDB Chainの数:195,656
  • UniProtIDが付加されたChainを持つPDB数:77,193
  • PDB中のユニークなUniProtID数:27,859
    • PDB 全エントリ数:83,266
    • UniProt 全エントリ数:536,789

 というわけで,UniProtのエントリに対して,27,859/536,789≒5.2% しか構造が対応していないということが分かった.感覚で10%はあるものだと思っていたので,結構意外であった.

 そんなわけで,UniProtIDが紐付いたChainが195,656個に対して,ユニークなUniProtID数が27,859ということは,結構な数の重複があるということである.そのヒストグラムをプロットしてみた.

これは横軸に「あるUniProtIDに対応しているPDB Chainの数」,縦軸に「UniProtIDの数」を取ったものである.右は左のグラフを両対数プロットしたものである.両対数で直線に乗るような感じ,である.

 なお,PDB Chainの数が多いUniProtIDベスト5は,

  1. 698個 P01308 Insulin
  2. 696個 P00734 Prothrombin
  3. 646個 P00720 Lysozyme
  4. 542個 P19491 Glutamate receptor 2
  5. 509個 P61769 Beta-2-microglobulin

であった.パースがうまくいってないものが混じっていて概算でしかない(大事なことなので二回言う)が,500個超えとか,なかなか激しいなと思う次第である.