Hi,
Imagine I have two rdkit mol objects, one from SD and one from SMILES:
import os
import StringIO
from rdkit.Chem import SDMolSupplier
from rdkit.Chem import SmilesMolSupplier
from rdkit.Chem import SmilesWriter
mol = '''
MJ150413
6 6 0 0 0 0 0 0 0 0999 V2000
0.7144 1.2375 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
1.4289 0.8250 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
1.4289 -0.0000 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
0.7144 -0.4125 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
0.0000 0.0000 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
0.0000 0.8250 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
1 2 2 0 0 0 0
2 3 1 0 0 0 0
3 4 2 0 0 0 0
4 5 1 0 0 0 0
5 6 2 0 0 0 0
1 6 1 0 0 0 0
M END
'''
suppl = SDMolSupplier()
suppl.SetData(mol)
fromSD = suppl.next()
suppl = SmilesMolSupplier()
suppl.SetData('C', titleLine=False)
fromSMILES = suppl.next()
Now I want to convert them to SMILES. For the mol from SD, the
identifier is missing:
sio = StringIO.StringIO()
w = SmilesWriter(sio, delimiter=' ', nameHeader='Name',
includeHeader=True, isomericSmiles=False, kekuleSmiles=False)
w.write(fromSD)
w.flush()
print sio.getvalue()
>>> SMILES Name
>>> c1ccccc1
but for mol from SMILES it's fine:
w.write(fromSMILES)
w.flush()
print sio.getvalue()
>>> SMILES Name
>>> c1ccccc1
>>> C 1
Is that a bug or an expected behavior? Is it possible to get
identifiers for both mols?
Kind regards,
Michał Nowotka
------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
Rdkit-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss