CDK 2.0

CDK

CDK ver 2.0 が公開されているので、以前作ったプログラムの動作確認も兼ねて、サンプルスクリプトと共に紹介します。 まずは、MACCS keys (166ビット版)から。○変更点 ・IMolecule インターフェースが削除されたので、IAtomContainer に変更 ・IteratingSMI…

PubChem Fingerprint

PubChemデータベースは、独自のフィンガープリントを構築して Webサイト内での類似度検索に使っています。そのフィンガープリントの構成は既に公開されているのですが、 881ビットもあるので、ちまちま実装するのは面倒です。 そこでCDKを見てみると… Pubche…

chemical beauty (2)

(1) のつづき。Bickertonら*1は、QEDを定義したあと、薬物候補を判別するベンチマークを行いました。 従来から使われているリピンスキーの法則より優れていることを示すためです。 正例:DrugBank登録の薬物 負例:PDB登録の低分子リガンド ここで「QEDの方…

芳香環の数

芳香環の数は、分子の疎水性に大きく寄与します。 疎水性は、アルブミン結合率・CYP3A4代謝酵素の阻害率・hERGタンパク質阻害率などに強く影響します。 したがって、芳香環を数えることは、「薬らしさ」の指標となります*1。 数えてみましょう。 ただし、ナ…

chemical beauty (1)

「薬らしさ(drug-likeness)」という指標があります。 これは、物性が承認薬と似ているという基準で候補化合物をざくっと絞り込むときに使います。 有名な指標は、リピンスキーの法則ですが、最近、新たな指標が提案されたので取り上げます。 それは、Bicke…

化合物が流れる動画 (3)

前回の続き。 こんどは、構造の一部のみを"回転"させます。 OpenbabelのRotateメソッドを使ってみます。 回転可能な結合を適当に見つけてきて、 二面角をなす4原子の番号を関数に入力します。 (この番号は、SDFにおける登場順で付けられます) #include <stdio.h> #i</stdio.h>…

化合物が流れる動画 (2)

あけましておめでとうございます。 本年もよろしくお願いいたします。今年こそは、新しいことに挑戦しようと思います。 さて、化合物の動画について、まとめてみます。 まずは、単純な平行移動から。 Openbabel(ver2.3.0)を使います。Translateメソッドで…

化合物が流れる動画 (1)

ひょんなことから、 「科学・技術フェスタ in 京都2011」の出展資料を準備することになりました。研究室のボスによると、 「くすりがタンパク質に結合する様子を動画で示したい」 とのこと。いま、PyMOLという立体構造表示ソフトで動画を作成しているところ…

最新創薬インフォマティクス活用マニュアル

遺伝子医学MOOK 別冊 『最新創薬インフォマティクス活用マニュアル』 編者: 奥野恭史 教授(京大院薬) 出版社: (株)メディカルドゥ ISBN978-4-944157-75-4 http://www.medicaldo.co.jp/gene/pharmaco_informatics.html 共著で出版させていただきました。 興…

部分構造検索 (2)

OpenBabelに「obgrep」という部分構造検索コマンドがあるのですが、 CDKのUniversalIsomorphismTesterクラスとどちらが優れているか検証してみようという企画です。【比較条件】 QueryはSMILES形式の環構造。 検索対象DBは、DrugBankの6620化合物(SDF形式)…

CPSA記述子

(編集中)

ファンデルワールス体積

わざわざ3次元座標を生成しなくても、 各原子の原子タイプから回帰分析により近似できる記述子があります。 たとえば、疎水性(XLogP)、表面積(TPSA)、そして今回、 分子の体積を求めます。 Zhaoら*1によると、 以下の式でファンデルワールス体積Vが近似…

E-state指標

先週までのcanonicalな話は、 ECFPというフィンガープリントを実装するための準備だったのですが、 長引きそうなので、少し休題。 さて、気をとり直して次の話題に。 電子の分布を数値で表す「E-state指標(electrotopological index)」*1です。 まず、有機化…

Canonical label その3

CDK

各原子に割り当てられた素数の積と 並び替えらた原子の中間順位を出力してみます。 /* inv_label_EC.java */import java.io.*; import org.openscience.cdk.interfaces.*; import org.openscience.cdk.io.iterator.IteratingMDLReader; import org.openscien…

Canonical label その2

前回のつづき。原子のラベル付けを何回か繰り返してcanonical labelを生成する というプロセスについて書きかけたので、続けてみます。 ペンタン分子(C-C-C-C-C)の場合、まず原子の状態を数値化して、 10106003--20206002--20206002--20206002--10106003 …

Canonical label その1

CDK

前回のつづき。 Canonical SMILES文字列を生成するためには、 まず、文字列の開始点となる原子を決定しなければなりません。 そのために、それぞれの原子がどのような環境にいるかを数値化して、 その順番に原子を並べ替える、というのがひとつの方法です。 …

Canonical SMILES

CDK

ふたつの化学構造が同一構造なのか、手っ取り早く知りたいとき、 "Canonical (正準化された)" SMILES形式を使うと便利です。 化学構造を"通常の"SMILES形式で表現しようとすると、一意に定まらないことがあります。 たとえば、エーテル(diethyl ether)の場…

BEDROC

CRANのenrichvsパッケージにメールアドレスを載せていた影響なのか、 先日質問メールがとどきました。どうやら、Truchonらの論文*1を読んで ExcelでBEDROCを計算しようとして躓いているご様子。 従来より、スクリーニングの性能評価には、 エンリッチメント…

ファーマコフォア検索

CDK

ファーマコフォア (pharmacophore)とは、分子構造の抽象的な特徴を3次元空間上に配置したものです。 たとえば、2つの窒素原子と1つの酸素原子が以下のように配置した ファーマコフォアを定義してみます。 CDKのPharmacophoreMatcherクラスを使って、この…

Mendeleyで文献情報共有

最近は、論文誌の種類が増えて、 先行文献を網羅的に把握することが難しくなってきています。 また、過去に読んだ論文でも、 あの文章はどの論文のくだりだったか、思い出すだけでもひと苦労です。 このブログで紹介した文献も10種類を超えましたので、これ…

分子骨格と作用選択性

さきの記事で、「分子骨格(molecular framework)」を定義しました。 今回はその応用編です。 Yangらは、標的タンパク質選択性(最近流行のキーワードでもあります)との関連性に注目しました*1。 f_MF = (「分子骨格」内の重原子数) / (全体の重原子数) と定…

分子骨格 (molecular framework)

祇園祭。周辺には山鉾が配置され、多くの人で賑わっているところです。 山鉾の骨格には釘を一切用いず、荒縄で木材を丁寧に結って組み立てます(縄がらみと呼びます)。 直感的に強度が心配になりますが、実はそのほうが靭やかで強い構造になるらしく、 特に…

2変数によるLogPの回帰

せっかくcdk-1.3.12をインストールしたので、新クラスを使ってみます。 非常にシンプルなLogP計算手法が実装されています。 なんと、「炭素数」と「ヘテロ原子数」の2変数だけから回帰します(参考までに、XLogPは90変数)。 logP = 1.46 + 0.11 x (炭素数) …

enrichvs-0.0.5 is released.

R

I fixed sum bugs in a CRAN package 'enrichvs-0.0.4', and updated to version '0.0.5'. http://cran.r-project.org/web/packages/enrichvs/ An advantage of 'enrichvs' is to draw enrichment curves very easily. It works smoothly even if the number…

cdk-1.3.x を使ってみる

CDK

これまで cdk-1.2.7 を使ってきましたが、 先日立て続けに更新されたこともあり、 思い切って、開発段階にある cdk-1.3.12 を採用してみることにしました。 (sourceforgeからフリーでダウンロードできます。) ソースコードは移ろいやすいもの。 過去に紹介…

引力指標

ニュートンが発見した万有引力の法則、 すなわち、2つの物体の質量をM、m、物体間の距離をr、万有引力定数をGとして、 物体間にはたらく力 F = G x M x m / r^2 と表せることは、古典力学のもっとも基本的な公式なひとつです。 Katritzkyら*1は、すべての原…

Petitjean形状指標

「直径 = 2 x 半径」 と小学生のときに習いましたが、これは円や球に通用する公式であって、 その他の物体では成立しないことがあります。化学構造も然りです。 まずは、二次元記述子計算のときと同じく、化学構造をグラフと考えてみます。 すべての原子につ…

WHIM記述子 (2)

前回のつづきです。CDKによるコードは以下のとおり。 桁落ちでNaNが出力されないように、ところどころ補正しています。 /* whim_unity.java */import java.io.*; import org.openscience.cdk.interfaces.*; import org.openscience.cdk.io.iterator.Iteratin…

WHIM記述子 (1)

WHIM記述子*1は、代表的な三次元記述子のひとつで、 xyz座標軸を主成分軸に線形変換して数値化する、という特徴を持ちます。 具体的には、原子の座標に物理量(原子量、体積、電荷など)で重みづけしつつ 分散共分散行列を計算し、行列の固有値を求めるとい…

三次元座標の生成

CDK

アクオス、ビエラ、ブラビア、レグザ・・・3D化が進むテレビ業界ですが、 三次元情報を使いこなすには、まだ少し時間がかかりそうですね。 分子記述子にも、三次元情報を活用したものが数多く存在するのですが、 今まで紹介してきた一次元/二次元記述子と比…