Python で PDB ファイルから Ramachandran Plot を描く

タンパク質と二面角

タンパク質はアミノ酸が繋がって出来ている。クリスマスツリーに飾る電飾で言えばメインのケーブルが主鎖で電球(最近はLEDか)のところが側鎖と呼ばれる。側鎖はその種類でタンパク質の性質が変わってくるので大事な部分だけれども、それなりの大きさがあるので配置の仕方に制限がある。詳しくはWikipediaの二面角の記事参照。
主鎖を構成する N-Cαまわりの角度をφ(phi)、Cα-Cまわりの角度をψ(psi)とする。これを既知のタンパク質の構造についてプロットすると、側鎖の性質からφとψが取る値はある程度制限される。このプロットをRamachandran Plot とかRamachandran Diagramと言う。ラマチャンドラン プロット。google検索してたくさん出て来るラマチャンドランさんと、このプロットを考えたラマチャンドランさんは別人。(インド系らしい長いけど慣れると語感がいい名前)

ここから本題

タンパク質の立体構造について記載されたファイル(.pdb形式)が公共データベースである PDB から得られる。このファイルには原子の配置座標が含まれているので二面角を計算してプロットすればいい。今回はPDBでヒトのタンパク質について233ファイルを使った。二面角は157万とちょっと得られた。
(書き始めたけどコードはきれいじゃないので整理したら載せる)
二面角の計算はここを参考にした。
http://stackoverflow.com/questions/20305272/dihedral-torsion-angle-from-four-points-in-cartesian-coordinates-in-python

Ramachandran Plot らしいものが描けた。左上の群は主にβシートに由来する。真ん中はほとんどαヘリックス。(単純にこのデータから二面角を機械的に予測させると、とりあえずαヘリックス 扱いにしておけば平均的に正答率が高くなるので使い物にはならない。また別の話。)

これを中心のアミノ酸ごとに描くと、少しおもしろい。グリシン(G)は側鎖が水素原子だけなのでフレキシブルに二面角を取ることができる。プロリン(P)は側鎖が主鎖と環を作っているので制限が強い。

おまけ:Ramachandran Sphere

緯度と経度がある地球に似ているので、Ramachandran Sphere とでも呼んで球体にプロットするのが美しい気がした。(追記)試してみたけれど、大きな塊が地球で言う北極付近の βシートと、赤道やや南付近のαヘリックスだけなのでスカスカしてとても見にくい。Ramachandran Plot はすごい。

コメント

このブログの人気の投稿

Excelで近似直線の傾きと切片を得る

塩基配列のデータを扱うときは専用エディタ ApE を使おう

Illustrator で稲妻マークを描く