誘導体の化学構造を自動生成するプログラムを作りました。ご自由にお使いください

シェアする

研究の関係で、ある骨格の誘導体の化学構造を生成したいことがありまして、生成したあとはその化学構造の活性だったり物性だったりを推定するので、Python で構造生成機を作ってしまいました。Github にありますので、必要な方はご自由にお使いください。

https://github.com/hkaneko1985/structure_generator_based_on_r_group

構造生成機の名前は Structure Generator based on R-Group (SGRG) です。それっぽい名前を付けましたが、メイン骨格の R の部分に、部分構造をつけていくだけです。下の例は適当ですが、次のような骨格の化学構造の mol ファイル main_structure.mol があるときに、

下のような部分構造 (フラグメント) を準備した sdf ファイル fragments.sdf があると (例は適当です)、

すべてのフラグメントの組み合わせをメイン骨格の R につけて、化学構造を生成してくれます。下が一例です。

メインの骨格に R が 3 つあって、フラグメントが 20 個あると、20 × 20 × 20 = 8,000 構造が生成されます。生成された化学構造は SMILES 形式で generated_structures.smi というファイルに出力されます。

こちら https://github.com/hkaneko1985/structure_generator_based_on_r_group にあるように、main_structure.mol と fragments.sdf を structure_generator_based_on_r_group_all_combinations.py と同じフォルダ (ディレクトリ) において、structure_generator_based_on_r_group_all_combinations.py を実行してみてください (numpy と RDKit が必要です)。generated_structures.smi が出力されると思います。

main_structure.mol に R を含む構造にしたり、fragments.sdf に新たな部分構造を追加したりすると、別の化学構造群が生成されます。

化学構造の生成が必要のある方はご活用いただければと思います。

https://github.com/hkaneko1985/structure_generator_based_on_r_group

以上です。

質問やコメントなどありましたら、twitter, facebook, メールなどでご連絡いただけるとうれしいです。

シェアする

フォローする