今回は,前回用意したSDFからMolecular Descriptorsを出力してみます.
化合物は,構成原子や立体構造によって特異性を持っています.
LogPやPSAやpKaは有名所ですね.
LogP: 分配係数の一種であり,液―液系(オクタノール/水分配が広く用いられている)における化学物質の移行性,疎水性を表す指標.(Wikiより)
PSA: 極性表面積(Polar Surface Area).極性を帯びている分子の部分表面積.
pKa: 酸解離定数の負の常用対数.ブレンステッド酸の強さを定量的に表すための指標.
pKaは皆さんご存知の方も多いかと思いますが,LogPやPSAを実際にどのように計測するのでしょうか?
LogPは,実際には実験値です(たぶん).
対象となる化合物・水・オクタノールをフラスコに入れて混ぜあわせた際の分配を見て決定するものだと思います.またPSAは分子の三次元座標から,表面に存在すると考えられる極性基の面積総和を計算するわけですが,前回から何度か述べておりますが分子の三次元座標を決定することは難しいです.
また,どうしてLogP,PSA,pKaが重要かと言うと,主に「創薬」に関係してきます.
LogPは疎水性の指標となり得るわけですが,油によく溶ける分子は体内に吸収されやすい.また,PSAは分子の表面極性を表す指標となるわけですが,極性が高いと細胞膜を通過しにくく,体内に吸収されにくいということになります.pKaも同様で,吸収させたい溶液のpH(たとえば胃とか)を考えた時,イオン型が多いか非イオン型が多いかどうかを理解するために重要です(わかりやすいページ:http://next-pharmacist.net/archives/1970).
このような値に加え,分子量の大きさ,水素結合供与体の数と受容体の数,回転可能結合数を考慮した指標として,「Lipinski’s rule of five」というものがあります.これは,創薬開発における「薬らしさ」を表す指標です.(参考ブログ:http://ameblo.jp/kenken4433/entry-11266864657.html)
薬となり得る化合物の構造は半無限的に考えられますが,その薬らしさを評価するためにいちいちLogP等を実験的に求めていくのは時間とコストがかかってしまいます.コンピューターで上記rule of fiveを満たすかどうかを,化合物SDFから一瞬で計算してくれたら,すごくスループットがあがりますよね.
そのような目的を達成するため,「ケモインフォマティクス」という分野があり,上記の近似値を求めるための様々な計算手法が考案されています.In silico創薬,Qualitative Structure-Activity Relationship (QSAR) などに応用されています.
前置き終了(薬学部の皆さんすみません!管理人は上記のことにあまり詳しくなく,単純にMolecular Descriptorの重要性をまず理解していただきたく思い,様々な方のブログを見ながら,抜粋させていただきました.細かなところは突っ込まないようお願い致します.笑)
このような,ケモインフォマティクス,つまりコンピューターによる化合物プロパティ計算と,他の物理化学性質(保持時間など!)を結びつけようとする学問がQualitative Structure – Property Relationship (QSPR)と呼ばれるものです.特に保持時間に特化し,すでにQualitative Structure – Retention Relationship (QSRR)と呼ばれる分野も存在します.
化合物のプロパティを計算させるためのツールとして有名なのが,OpenBabel(C++),CDK(JAVA),RDKit(Python)です.管理人はCDKをC#用にラップして使っています.これらのライブラリーには,上記LogPの近似値を出力するメソッドがいくつか用意されており,こちらではCDKのライブラリーを読み込み,計算させたいメソッドに適当な引数を渡すことで簡単に化合物プロパティが計算できてしまいます.
Google検索で「CDK ○○(やりたい事)」
とか書くと,基本的にすぐやり方を見つけることができます.
ただ,エンドユーザーにとってはそもそも,Javaって聞くだけで気持ち悪くなってしまう方(ぼくもそうでした)もいると思います.
そのような方たちのために,すでに
「SDFを読みこめばCDK等に実装されている化合物プロパティを全部出力してくれる」
というようなツールがたくさんあります.
UC Davis Dr. Tobias Kindのホームページに,整理されて掲載されています.
http://fiehnlab.ucdavis.edu/staff/kind/ChemoInformatics/Concepts/Descriptors/
この中でも,今回はNUS(シンガポール国際大学)のDr. Chun Wei Yapが作ったPaDEL-descriptorを紹介します.
Yap CW (2011). PaDEL-Descriptor: An open source software to calculate molecular descriptors and fingerprints. Journal of Computational Chemistry. 32 (7): 1466-1474
まず,以下のサイトの,Usageの「here」と書かれているリンクからダウンロードしてください.2つhereが現在ありますが,2つ目のほうをダウンロードすると,各descriptorの詳細が書かれたエクセルファイルも一緒に手に入ります.
管理人は,前者のhereからダウンロードできるjava web start版を使ったことが無いので,二番目のhereからダウンロードできるものを使います.
ダウンロードして,zipファイルを解凍したら,中に入っている.jarファイルを開いて下さい.
もしかしたら,java runtime environment (JRE)がPCにインストールされていないと開かないかもしれません.
その方は,ここからダウンロードしてください.
Windows7以前の方は,こっちかも.
http://www.oracle.com/technetwork/java/javase/downloads/jre7-downloads-1880261.html
自分のPCのスペックを調べてインストールして下さい.
PaDEL-Descriptorを開いたら,,
1. まず,1つ目のタブでMolecules directory/fileから読み込みたいSDFもしくはSDFが含まれているフォルダを選択.
2. Descriptor output fileで出力先を選択
3. 3D,Retain 3D coordinates以外にチェックを入れる.
4. Advancedを開き,Max. running time per moleculeに30,000くらいを入力
5. 1D & 2Dのタブは全部チェック
6. 3Dのタブは全部チェックを外す
7. Fingerprintsのタブは,出したいFingerprintを選択.管理人は,基本的にPubChemのみ選択
8. Start!
結果はCSVで出力されます.
大量に読み込むと,たまにPaDELすねます.たまに動かなくなります.たまに,値が何も入っていないセルができたりします.その場合はもう一度トライしたらできます.
すごく便利で重宝しています.現在,全部で1444種のdescriptorを1,2次元構造情報から,431種を3Dから算出してくれるそうです.また,12種類のフィンガープリント(全16092ビット)も出力してくれます.
重要な事は,これらのdescriptorsは「近似値」も含んでいて,CDKから算出されているものが多いですが,「よろしくない近似値」も出力する可能性があることを頭に入れておいて下さい.つまり,ケモインフォマティクス分野の人々ががんばって色々な値を提案していて,それがCDKに実装していかれているわけですが,良い物もあれば悪いものもあるということです.
目的のプロパティと,良い相関が得られたDescriptorに関しては,しっかりと調べて,その値,式の信頼性を確認しましょう.
それでは,今日はこの辺で.