#chemistry #rdkit #molecule
#химия #rdkit #молекула
Вопрос:
У меня есть разветвленная молекула, точно такая же, как на изображении (слева).
Я хочу добавить COOH в конце каждой ветви, как изображение (справа)
Вот формат СМАЙЛОВ моей молекулы в упрощенном виде с 4 ветвями.
[N:1]([CH2:2][CH2:3][N:4]([CH2:47][CH2:48][CH:49]([NH:50][CH2:51][CH2:52][NH2:53])[O-:55])[CH2:66][CH2:67][CH:68]([NH:69][CH2:70][CH2:71][NH2:72])[O-:74])([CH2:9][CH2:10][CH:11]([NH:12][CH2:13][CH2:14][NH2:15])[O-:17])[CH2:28][CH2:29][CH:30]([NH:31][CH2:32][CH2:33][NH2:34])[O-:36]
На самом деле у меня гораздо большая молекула, но если я смогу найти способ сделать это с помощью простой молекулы, я думаю, что смогу распространить решение на более крупную.
Вот пример кода
mod_mol = Chem.ReplaceSubstructs(m, Chem.MolFromSmiles('[NH2:34]'), Chem.MolFromSmiles('[CH2:99]'), replaceAll=True) mod_mol[0]
например, я попытался изменить NH2 на CH2, но ничего не произошло.
Комментарии:
1. В сообщении формат СМАЙЛОВ вставлен неправильно. Вот оно[N:1]([CH2:2][CH2:3][N:4]([CH2:47][CH2:48][CH:49]([NH:50][CH2:51][CH2:52][NH2:53])[O-:55])[CH2:66][CH2:67][CH:68]([NH:69][CH2:70][CH2:71][NH2:72])[O-:74])([CH2:9][CH2:10][CH:11]([NH:12][CH2:13][CH2:14][NH2:15])[O-:17])[CH2:28][CH2:29][CH:30]([NH:31][CH2:32][CH2:33][NH2:34])[O-:36]
2. Пожалуйста, добавьте информацию к вашему вопросу, нажав на
edit
кнопку, не публикуйте исправления/дополнения к вашему вопросу в комментариях3. Ты пробовал
Chem.ReplaceSubstructs()
?4. я попытался последовать вашему совету, но получил ошибку. ArgumentError: Типы аргументов Python в rdkit.Chem.rdmolops.ReplaceSubstructs(Mol, NoneType, Mol) не соответствуют сигнатуре C :
5. @AykutElmas, похоже, это то, что вы используете. Не могли бы вы, пожалуйста, указать пример кода в своем вопросе. Для меня
ReplaceSubstructs
это работает.