Tanimoto-similariteit en substructuur zoeken met SMARTS uitgelegd, met een gratis tool
Kort antwoord: Tanimoto-similariteit vergelijkt de fingerprints van twee moleculen: T = c / (a + b − c), waarbij a en b de bits zijn die in elk molecuul aan staan en c de bits die in beide aan staan. De waarde loopt van 0 tot 1. Open de tool moleculaire gelijkenis en substructuur zoeken, voer twee SMILES in en klik op Vergelijken. Aspirine en salicylzuur scoren 0,554 (matig vergelijkbaar). Gebruik voor zoeken op patroon SMARTS, zoals [CX3](=O)[OX2H1] voor een carbonzuur.
Belangrijke begrippen in één regel
| Fingerprint | Een lijst met bits. Elk bit staat aan (1) als het molecuul een bepaald structuurfragment bevat. |
|---|---|
| Tanimoto-coëfficiënt | c / (a + b − c). Gedeelde bits gedeeld door alle bits die in een van beide moleculen aan staan. Bereik 0 tot 1. |
| Dice-coëfficiënt | 2c / (a + b). Geeft gedeelde bits dubbel gewicht. Altijd minstens zo hoog als Tanimoto. |
| Substructuur | Een groep verbonden atomen en bindingen binnen een groter molecuul, zoals een benzeenring of een COOH-groep. |
| SMARTS | Een patroontaal op basis van SMILES om substructuren te beschrijven met voorwaarden op atomen en bindingen. |
| Gemeenschappelijke substructuur | De grootste verzameling verbonden atomen en bindingen die in beide moleculen voorkomt. |
Zo werken moleculaire fingerprints
Een computer kan twee tekeningen niet direct vergelijken, dus elk molecuul wordt omgezet in een fingerprint. Er zijn drie gangbare soorten:
- Fingerprints op basis van een fragmentwoordenboek hebben één bit per vooraf gedefinieerd fragment, zoals een carbonylgroep naast een zuurstofatoom. MACCS-keys (166 bits) werken zo.
- Padfingerprints hashen elk lineair pad van atomen tot een ingestelde lengte naar een bit.
- Circulaire fingerprints (ECFP, Morgan) hashen de omgeving rond elk atoom tot een straal van 2 of 3 bindingen.
De MolDraw-tool gebruikt een fingerprint van 512 bits op basis van een fragmentwoordenboek, dezelfde als de Compare molecules-plug-in. Aspirine zet 74 van de 512 bits aan. Salicylzuur zet er 41 aan. Grotere moleculen zetten meestal meer bits aan.
Fingerprints leggen vast welke atomen met welke verbonden zijn. Ze leggen geen wiggen of 3D-vorm vast. Daarom scoren L-alanine en D-alanine 1,000.
De Tanimoto-formule met een uitgewerkte telling
Stel dat a het aantal bits is dat aan staat in molecuul A, b in molecuul B en c in beide.
- Tanimoto: T = c / (a + b − c)
- Dice: D = 2c / (a + b) = 2T / (1 + T)
Uitgewerkt voorbeeld, aspirine vs. salicylzuur:
- Aspirine, CC(=O)Oc1ccccc1C(=O)O: a = 74 bits.
- Salicylzuur, OC(=O)c1ccccc1O: b = 41 bits.
- Bits die in beide aan staan: c = 41. Elk bit van salicylzuur staat ook in aspirine.
- Vereniging = a + b − c = 74 + 41 − 41 = 74.
- T = 41 / 74 = 0,554. D = 82 / 115 = 0,713.
Salicylzuur is een substructuur van aspirine, maar toch is de score maar matig. De 33 extra bits van de acetylester van aspirine tellen mee in het nadeel. Tanimoto straft verschillen in grootte af, wat handig is als je nauwe analogen van dezelfde grootte zoekt.
Tanimoto is symmetrisch: A vs. B geeft dezelfde waarde als B vs. A. Identieke fingerprints geven precies 1.
Wat een Tanimoto-score betekent
| 0,85 tot 1,00 | Zeer vergelijkbaar. Nauwe analogen, of hetzelfde molecuul bij 1,00. |
|---|---|
| 0,70 tot 0,85 | Vergelijkbaar. Gedeelde kern met een of twee andere groepen. |
| 0,50 tot 0,70 | Matig vergelijkbaar. Enkele gedeelde fragmenten, ander skelet of andere substituenten. |
| 0,30 tot 0,50 | Zwak vergelijkbaar. Alleen een ring of een functionele groep gemeen. |
| Onder 0,30 | Niet vergelijkbaar. |
Deze grenzen passen bij de fragmentfingerprint van 512 bits die hier wordt gebruikt. Met een circulaire fingerprint zoals ECFP4 zijn de scores voor hetzelfde paar vaak lager, en kan 0,4 al op een verwante verbinding wijzen. Meng nooit scores van twee fingerprints in één tabel.
Basis van SMARTS voor substructuur zoeken
Een gewone SMILES is al een zoekopdracht: c1ccccc1 vindt elke benzeenring. Vierkante haken voegen voorwaarden toe aan één atoom.
#7 | Atoomnummer 7: elk stikstofatoom, aromatisch of niet. |
|---|---|
c / C | Aromatisch koolstofatoom / alifatisch koolstofatoom. |
H1, !H0 | Precies één waterstofatoom / minstens één waterstofatoom. |
X3, D2 | In totaal drie verbindingen (H inbegrepen) / twee buren die zware atomen zijn. |
R, R0, r5 | In een ring / niet in een ring / in een vijfring. |
, ; ! | Of / en / niet. [F,Cl,Br,I] is elk halogeen. |
- = # : ~ | Enkele, dubbele, drievoudige, aromatische en willekeurige binding. |
Gangbare patronen:
- Carbonzuur:
[CX3](=O)[OX2H1] - Ester:
[#6][CX3](=O)[OX2][#6] - Primair alkylamine:
[NX3;H2][CX4] - Aromatisch halogenide:
c[F,Cl,Br,I] - H-brugdonor volgens Lipinski:
[#7,#8;!H0]. H-brugacceptor volgens Lipinski:[#7,#8]
De tool ondersteunt nog geen recursieve SMARTS met $( ) of door punten gescheiden zoekopdrachten. Herschrijf zulke voorwaarden met buuratomen.
Zo gebruik je de MolDraw-tool voor gelijkenis en substructuren
- Open de pagina moleculaire gelijkenis en substructuur zoeken. Het tabblad Gelijkenis is geopend.
- Typ SMILES bij Molecuul A (SMILES) en Molecuul B (SMILES) en klik op Vergelijken. Wil je liever tekenen, kies dan Molecuul A of Molecuul B naast Drawing fills en teken in de editor. Klik op een voorbeeld zoals Morfine vs. codeïne om het te proberen.
- Lees de scores van Tanimoto en Dice, het oordeel en de gekleurde balk. De tabel toont a, b en c, zodat je de berekening kunt controleren. Gearceerde atomen vormen de grootste gemeenschappelijke substructuur.
- Om veel moleculen te rangschikken, plak je één SMILES per regel (een naam na de SMILES is optioneel) onder Een lijst rangschikken tegen molecuul A en klik je op Lijst rangschikken. Sla de tabel op met Download CSV.
- Open voor zoeken op patroon Substructuur zoeken. Typ een zoekopdracht of klik op een knop in de spiekbrief, plak je doelmoleculen en klik op Zoeken. Vink Alleen moleculen met een treffer tonen aan om de rest te verbergen.
Uitgewerkte voorbeelden
Voorbeeld 1: paracetamol vs. fenacetine
Fenacetine (CCOc1ccc(NC(C)=O)cc1) heeft een ethoxygroep waar paracetamol een OH-groep heeft. Tanimoto = 0,846, Dice = 0,917. Oordeel: vergelijkbaar, net onder de grens voor zeer vergelijkbaar. De gedeelde kern is de hele acetanilide-eenheid.
Voorbeeld 2: NSAID's rangschikken tegen ibuprofen
Klik op Voorbeeld: NSAID's vs. ibuprofen. Naproxen staat bovenaan (0,711), gevolgd door ketoprofen (0,691) en flurbiprofen (0,681). Alle drie zijn 2-arylpropionzuren. Diclofenac scoort 0,336 en cafeïne staat onderaan met 0,106.
Voorbeeld 3: welke geneesmiddelen zijn carbonzuren?
Zoekopdracht [CX3](=O)[OX2H1] op de 9 voorbeeldgeneesmiddelen: 6 van de 9 geven een treffer. Paracetamol, celecoxib en cafeïne niet. Elke zuurgroep is gearceerd in de tekening.
Voorbeeld 4: donoren volgens Lipinski in paracetamol
Zoekopdracht [#7,#8;!H0] op CC(=O)Nc1ccc(O)cc1 geeft 2 treffers: de amide-N–H en de fenol-O–H. De acceptorzoekopdracht [#7,#8] geeft er 3: N, de zuurstof van C=O en de zuurstof van OH.
Voorbeeld 5: enantiomeren
L-alanine vs. D-alanine geeft Tanimoto 1,000. De tool voegt een melding toe dat de twee alleen in stereochemie verschillen.
Overzichtstabel
| Aspirine vs. salicylzuur | T = 0,554, D = 0,713, matig vergelijkbaar |
|---|---|
| Paracetamol vs. fenacetine | T = 0,846, vergelijkbaar |
| Morfine vs. codeïne | T = 0,944, zeer vergelijkbaar |
| Ibuprofen vs. naproxen | T = 0,711, vergelijkbaar |
| Benzeen vs. cyclohexaan | T = 0,000, niet vergelijkbaar |
| SMARTS voor carbonzuur | [CX3](=O)[OX2H1] |
| SMARTS voor donoren en acceptoren | [#7,#8;!H0] en [#7,#8] |
Veelgemaakte fouten
- Scores van verschillende fingerprints vergelijken. Een 0,6 met de ene fingerprint is geen 0,6 met een andere.
- Verwachten dat stereo-isomeren verschillen. 2D-fingerprints negeren stereochemie.
- Gelijkenis lezen als activiteit. Eén veranderd atoom kan een geneesmiddel uitschakelen.
- Waterstofatomen weglaten in een zoekopdracht.
C(=O)Ovindt ook esters. Gebruik[OX2H1]voor een zure OH. - c en C door elkaar halen.
C1CCCCC1is cyclohexaan en vindt geen benzeen. - Zouten en ladingen vergeten. Een carboxylaat
[O-]wordt niet gevonden met een OH-zoekopdracht.
Vragen en antwoorden
Wat is een goede Tanimoto-score?
Met de fragmentfingerprint van 512 bits in de MolDraw-tool betekent 0,85 of meer zeer vergelijkbaar, 0,70 tot 0,85 vergelijkbaar, 0,50 tot 0,70 matig vergelijkbaar, 0,30 tot 0,50 zwak vergelijkbaar en onder 0,30 niet vergelijkbaar. De grenzen veranderen met de fingerprint, dus vergelijk alleen scores van één methode.
Hoe bereken je de Tanimoto-coëfficiënt?
Tel de bits die aan staan in molecuul A (a), in molecuul B (b) en in beide (c). Tanimoto = c / (a + b − c). Voor aspirine (a = 74) en salicylzuur (b = 41) met c = 41 is Tanimoto = 41 / 74 = 0,554.
Is Tanimoto-similariteit hetzelfde als Dice-similariteit?
Nee. Beide gebruiken dezelfde tellingen, maar Dice = 2c / (a + b). Dice is altijd gelijk aan of hoger dan Tanimoto, en de twee hangen samen via Dice = 2T / (1 + T). Een Tanimoto van 0,554 is een Dice van 0,713.
Waarom geeft de tool 1,000 voor twee verschillende moleculen?
De fingerprint slaat de connectiviteit op, niet de 3D-vorm. Enantiomeren, diastereomeren en E/Z-isomeren hebben dezelfde fragmenten, dus ze scoren 1,000. De tool toont een melding als twee invoeren alleen in stereochemie verschillen.
Wat is het verschil tussen SMILES en SMARTS?
SMILES beschrijft één molecuul. SMARTS beschrijft een patroon dat veel moleculen kunnen bevatten. Elke SMILES is een geldige SMARTS, maar SMARTS voegt voorwaarden toe zoals H1 (één waterstofatoom), X3 (drie verbindingen), R (in een ring) en logica met een komma (of), puntkomma (en) en uitroepteken (niet).
Hoe vind ik alle carbonzuren in een lijst met moleculen?
Open het tabblad Substructuur zoeken, klik in de spiekbrief op Carboxylic acid om [CX3](=O)[OX2H1] te laden, plak je SMILES-lijst en klik op Zoeken. In de voorbeeldset van 9 geneesmiddelen geven er 6 een treffer: ibuprofen, naproxen, ketoprofen, flurbiprofen, diclofenac en aspirine.
Kan ik waterstofbrugdonoren tellen met SMARTS?
Ja. Het patroon [#7,#8;!H0] vindt elk stikstof- of zuurstofatoom met minstens één waterstofatoom, en dat is het aantal donoren volgens Lipinski. Paracetamol geeft 2 treffers en het acceptorpatroon [#7,#8] geeft er 3.
Betekent een hoge gelijkenis dat twee moleculen dezelfde activiteit hebben?
Niet altijd. Vergelijkbare moleculen hebben vaak dezelfde activiteit, en daarom wordt zoeken op gelijkenis gebruikt om analogen te vinden. Maar één verandering, zoals één methylgroep of één stereocentrum, kan de activiteit wegnemen. Beschouw de score als een richtlijn, niet als bewijs.