CDK

CDK 2.0

CDK

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

PubChem Fingerprint

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

芳香環の数

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

chemical beauty (1)

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

ファンデルワールス体積

わざわざ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 その1

CDK

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

Canonical SMILES

CDK

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

ファーマコフォア検索

CDK

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

分子骨格と作用選択性

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

分子骨格 (molecular framework)

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

2変数によるLogPの回帰

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

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化が進むテレビ業界ですが、 三次元情報を使いこなすには、まだ少し時間がかかりそうですね。 分子記述子にも、三次元情報を活用したものが数多く存在するのですが、 今まで紹介してきた一次元/二次元記述子と比…

MACCS keys

指紋を認識するアルゴリズムでは、線(隆線)の切れ目や分岐点の座標情報を抽出して 登録/照合を行うタイプが主流だそうです。 これら特徴点の数や位置は人によって異なりますので、個人認証にぴったりというわけです。 化合物にも、フィンガープリント(fin…

部分構造検索 (1)

CDK

個人的な偏見ですが、フリーソフトの部分構造検索には疑心を抱いていて、 いちど検出率を確認してみようと思った次第です。 まずは、UniversalIsomorphismTesterクラスを使ってみます。 「Cannot percieve atom type for 〜」の警告が鬱陶しいので、 今回は…

κ形状指標

(編集中)

Fragment complexity

Fragmentってゆーから期待してしまいましたが、 ソースコードを読んで、単に結合の粗密を測る尺度だとわかりました。 Nilakantanら*1の論文では、 別プログラムで環構造単位に分子を切断した後、それぞれのフラグメントについて この尺度で計算していますの…

Eccentric Connectivity Index

「Eccentric」と聞くとエキセントリック少年ボウイを思い出させますが ここではそんな「風変わりな」という意味ではなく、 れっきとした数学用語「離心性」として扱います。 どちらのEccentricも、中心(centric)から離れているイメージです。 原子間の繋が…

アミノ酸を探せ

武道では、「守破離」という修行の順序に関する心得があるそうです。 「守」 → 所属する流派の教えを忠実に模倣する 「破」 → 他流派の教えを取り入れ発展させる 「離」 → 独自で創造的なものを生み出す 何をするにしても、模倣から始めるのが良い気がします…

自己相関(autocorrelation)

一般的に、場所や時間ごとの観測値の中に繰り返しパターンが潜んでいる場合、 「自己相関」を計算することでその周期性を検出できることがあります。 実際、音声やスペクトルの解析では、周期的に現れるシグナルを ノイズの海の中から掬い上げるときに使われ…

BCUT記述子

化学構造は、しばしば「グラフ」というデータ構造として取り扱われます。 このとき、各原子はノード(点)、原子間の結合はエッジ(線)と呼ばれ、 エッジの連結情報は、隣接行列として表現できます。 Burden*1は、この隣接行列の対角成分に各原子の属性を格…

トポロジカル極性表面積

学生時分には、球や円錐の「表面積」の計算を教わりましたが、 何処で使う計算なのか把握していなかったこともあって、 個人的に、随分とぞんざいに扱ってきた気がしています。 特に、ほぼ同時に習う「体積」と比較して、 高校範囲の物理・化学では幽霊のよ…

回転可能結合数

なぜ、CDKのRuleOfFiveDescriptorクラスで「回転可能結合数」が数えられているのか、 推察してみましたところ、Veberらの論文*1 に行き当たりました。 彼らは、リピンスキーの法則の拡張を考え、結果として、 回転可能結合数 ≦ 10 極性表面積 ≦ 140 (Å^2) が…

リピンスキーの法則

オームの法則、ヘンリーの法則、メンデルの法則、ケプラーの法則、マーフィーの法則、… どの分野でも、発見した人の名前に因んだ経験則が受け継がれていますよね。 もちろん創薬分野にもあります。 これまで挙げてきた分子量、LogP、水素結合ドナー/アクセプ…