0

化合物の笑顔を使って指紋を採取したいです。私はしましたが、問題は、リストの長さを計算できるように、より高いビットとリスト形式で取得したいことです。この場合、クラスを取得するだけです。pybelを使用したpythonの解決策はありますか? 私はこれをしましたが、書くlen(fps[0])とエラーが発生します

import pybel
smiles = ['CCCC', 'CCCN']
mols = [pybel.readstring("smi", x) for x in smiles]
fps = [x.calcfp() for x in mols]
print fps[0]
4

1 に答える 1

0

関数fpを指紋オブジェクトに使用できます。デフォルトでは FP2 フィンガープリントが計算され、その長さは 32 です。長さとビット 0 を出力するコードがあります。

import pybel
smiles = ['CCCC', 'CCCN']
mols = [pybel.readstring("smi", x) for x in smiles]
fps = [x.calcfp() for x in mols]
print len(fps[0].fp)
print fps[0].fp[0]

結果:

32 
0
于 2015-09-08T14:12:01.060 に答える