RDKit 사용 노트
3792 단어 화학적Pythonchemoinformatics
차리다
환경이야, 미리 설치해야 할 물건이야.
컨디션
설치하다.
conda로 RDKit용 가상 환경 만들기
$ conda create -c rdkit -n (仮想環境名) rdkit
직접import rdkit
사용하면 ○○ 없는 라이브러리라고 해서 다운로드(본인의 경우libxrender1
$ sudo apt install libxrender1
matplotlib
로 추가 scikit-learn
또는 $ conda install XXXX
설치(나중에 기사 작성용
tabulate
시험해 보다
디스플레이 분자
from rdkit import Chem
from rdkit.Chem import Draw
# SMILES記法で書いた分子をmolファイルと呼ばれる形式に変更
molecule_1 = Chem.MolFromSmiles('Cc1ccccc1')
# mol形式ファイルを画像に変換 (display)
Draw.MolToImage(molecule_1)
[결과 출력]
지문 생성
아래 기사를 참고하여 화합물의 SMILES와 용해도를 얻은 데이터.
RDKit과 Sckit-learn에서 화학정보학에 들어가다
smile
XXXX
logS
0
O=C(C)N
60-35-5
1.58
1
NNC
60-34-4
1.34
2
O=C(C)O
64-19-7
1.22
3
N1CCCC1
123-75-1
1.15
4
O=C(N)NO
127-07-1
1.12
SMILE 형식으로 저장된 것을 MOL 형식으로 변환합니다.이후 지문을 얻었다.
-radius: 반지름.관심의 원자에서 몇 개의 원자 첨단까지 고려하다.smiles = df['smile']
molecules = [Chem.MolFromSmiles(smile) for smile in smiles]
# 試しに一つだけフィンガープリントを作成
from rdkit.Chem import AllChem
molecule_1 = molecules[0]
fingerprint = AllChem.GetMorganFingerprintAsBitVect(mol=molecule_1, radius=2, nBits=2048)
# -> rdkit.DataStructs.cDataStructs.ExplicitBitVectというクラスのデータが作成
fingerprint.ToBitString()
# -> 000000000000000100000000000000100のような表現に変更
# -> あとはこれを使って好きなように機械学習のモデルに突っ込めばOK
Reference
이 문제에 관하여(RDKit 사용 노트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/SaitomTech/items/b446e028ea75f32fa15c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
from rdkit import Chem
from rdkit.Chem import Draw
# SMILES記法で書いた分子をmolファイルと呼ばれる形式に変更
molecule_1 = Chem.MolFromSmiles('Cc1ccccc1')
# mol形式ファイルを画像に変換 (display)
Draw.MolToImage(molecule_1)
smiles = df['smile']
molecules = [Chem.MolFromSmiles(smile) for smile in smiles]
# 試しに一つだけフィンガープリントを作成
from rdkit.Chem import AllChem
molecule_1 = molecules[0]
fingerprint = AllChem.GetMorganFingerprintAsBitVect(mol=molecule_1, radius=2, nBits=2048)
# -> rdkit.DataStructs.cDataStructs.ExplicitBitVectというクラスのデータが作成
fingerprint.ToBitString()
# -> 000000000000000100000000000000100のような表現に変更
# -> あとはこれを使って好きなように機械学習のモデルに突っ込めばOK
Reference
이 문제에 관하여(RDKit 사용 노트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/SaitomTech/items/b446e028ea75f32fa15c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)