LoginSignup
1
2

More than 3 years have passed since last update.

PythonとRDKitでアミノ酸配列から環状ペプチドを生成してみる

Last updated at Posted at 2020-12-29

はじめに

掲題の件を実現するにあたって、CycloPsというライブラリを見つけたので今回試してみた。

環境

  • Python3.x
  • RDKit 2020.X
  • CycloPs

CycloPsとは

アミノ酸配列から環状ペプチドのバーチャルライブラリを生成してくれるツールである。
1次元のアミノ酸配列から、残基同士を結合することで、環状のペプチドを生成してくれる。
GUIとコマンドラインの両方で使える。
詳しくは参考文献の論文を参照のこと。

残基同士を結合するパターンは次の5種類である。それぞれ細かい条件があるようなので詳しくは論文を見てほしい。

  • head-to-tail bond アミノ酸配列のC端とN端を結合する。
  • disulfide bond  システイン残基同士を結合する。
  • side-chain to side-chain bond  側鎖同士を結合する。
  • side-chain to N-terminal bond  側鎖とN端を結合する
  • side-chain to C-terminal bond  側鎖とC端を結合する

CycloPsのインストール

元々はPython2系で開発されているが、自分の環境だとRDkitがうまく動作しなかったため、3系でイントールする。

 $ conda create -n cyclops python==3.6
 $ conda activate cyclops
 $ conda install -c rdkit rdkit
  $ git clone https://github.com/fergaljd/cyclops.git

インストール後の作業

Python3系ではCycloPsが動作しないためソースを修正する必要がある。今回は、コマンドラインのみ使えればよい。
そこで PepLibGen/StructGen/StructGen.py を以下の通り修正することで、Python3でも動作するようにする。

修正内容

  • print a, b のような記載を print(a,b) のように修正する。
  • Except a, b のような記載を Except a as b のように修正する。
  • 940行目あたりでエラーが出るため、以下のように修正する
            # print(out,mollstr)
            # print(out, '$$$$')
            out.write(molstr)
            out.write('$$$$')
            out.write('\n')
  • その他実行時エラーとなるところを、Python3で動作するよう修正する(手抜き)。

実行例

CPPsite 2.0 に登録されている環状ペプチドのアミノ酸配列と出力SDFを指定して実行する。
するとSDFに、5種類のパターンにより生成された環状ペプチドのリストが出力される。
以下実行例である。

python PepLibGen/StructGen/StructGen.py CSKSSDYQC hoge.sdf

実行結果例

アミノ酸配列 "CSKSSDYQC" を指定して得られた6つの構造を以下に列挙する。

1番目

これは線形タイプである。環状ではないものも出力される仕様のようである。
CSKSSDYQC.mol.png

2番目

これはN端とC端をつなげたものか。
CSKSSDYQCHT.mol.png

3番目

これは末端と側鎖か。
CSKSSDYQCSCXEXXXXXXX.mol.png

4番目

これは側鎖同士か。
CSKSSDYQCSCXEXXXZXXX.mol.png

5番目

これは側鎖同士か
CSKSSDYQCSCXXXXXZXXX.mol.png

6番目

これはシステイン残基同士の結合だろう。
CSKSSDYQCSSCXXXXXXXC.mol.png

参考

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2