Отпечатки пальцев с использованием модуля Python под названием Pybel
Я хочу получить отпечатки пальцев, используя улыбки соединений. Я сделал, но проблема в том, что я хочу получить более высокий бит и формат списка, чтобы я мог рассчитать длину списков. В этом случае я просто получаю занятия. Любое решение в Python с использованием Pybel? Я сделал это, но когда я пишу 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]
1 ответ
Вы можете использовать функцию 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