In Anlehnung an Python-Variablen und Datentypen aus der Chemoinfomatik werden wir die "Datenstruktur" mit dem Thema Lipidomik (umfassende Analyse von Lipiden) erläutern. .. Wir werden hauptsächlich praktische Beispiele für Chemoinfomatik erläutern. Wenn Sie also die Grundlagen überprüfen möchten, lesen Sie bitte den folgenden Artikel, bevor Sie diesen Artikel lesen.
Forscher von Pharmaunternehmen fassten die Datenstruktur von Python zusammen
Eine Liste ist ein Datentyp, der mehrere Elemente speichert und mit list name = [element 1, element 2, ...]
erstellt werden kann.
Das folgende Beispiel ist eine Liste, die nur Zeichenfolgen enthält. Sie können jedoch auch Zahlen und boolesche Werte, mehrere Elemente mit demselben Wert und eine Mischung aus mehreren Datentypen eingeben.
Elemente in der Liste können durch ihren "Listennamen [Indexnummer]" referenziert werden.
Es ist zu beachten, dass die Indexnummer mit "0" beginnt, nicht mit "1".
fatty_acids = ['FA 16:0', 'FA 18:0', 'FA 18:1', 'FA 18:2', 'FA 18:3']
print(fatty_acids[0]) #Erstes (erstes) Element
print(fatty_acids[1]) #Zweites Element
print(fatty_acids[-1]) #Erstes (letztes) Element von hinten
print(fatty_acids[2:4]) #3. bis 4. Elemente
print(fatty_acids[3:]) #4. und nachfolgende Elemente
print(fatty_acids[:3]) #Bis zu 4 Elemente
print(fatty_acids[:-2]) #Das zweite Element von hinten
Sie können den Wert des Elements mit der angegebenen Indexnummer aktualisieren, indem Sie "Listenname [Indexnummer] = Wert" festlegen.
fatty_acids[3] = 'FA 18:2 (6Z, 9Z)'
print(fatty_acids)
Übrigens repräsentiert "(6Z, 9Z)" die Position und den Stil der Doppelbindung. "6" und "9" geben die Anzahl der Kohlenstoffatome an, die vom Kohlenstoffatom auf der gegenüberliegenden Seite der Carbonsäure zur Bildung einer Doppelbindung gezählt werden, und "Z" bedeutet, dass die Doppelbindung * cis * ist. Es zeigt, dass. Wenn es "E" ist, ist es * trans *. Einzelheiten zur Struktur von Linolsäure finden Sie unter dem folgenden Link. Linoleic acid (FA 18:2) Wenn es eine Doppelbindung gibt, ist es notwendig, die Position und den Bindungsmodus der Doppelbindung wie oben beschrieben anzugeben, aber es wird etwas länger dauern, so dass wir es von nun an weglassen werden.
Sie können die Anzahl der Elemente in der Liste mit len
überprüfen.
Übrigens ist "len" eine Abkürzung für "Länge".
print(len(fatty_acids))
Die am häufigsten verwendeten Listenoperationen sind "+" und "*".
Sie können Listen mit +
kombinieren und mit*
eine Liste mit der angegebenen Anzahl derselben Elemente erstellen.
saturated_fatty_acids = ['FA 16:0', 'FA 18:0'] #Gesättigte Fettsäuren (Fettsäuren ohne Doppelbindungen)
unsaturated_fatty_acids = ['FA 18:1', 'FA 18:2', 'FA 18:3'] #Ungesättigte Fettsäuren (Fettsäuren mit Doppelbindungen)
fatty_acids = saturated_fatty_acids + unsaturated_fatty_acids #Beitrittsliste
print(fatty_acids)
number_carbons = [16] + [18]*4 #Liste verbinden und duplizieren
print(number_carbons)
number_carbons
ist die Anzahl der Kohlenstoffatome in der Liste fat_acids
.
Da "Fettsäuren" vier Molekülspezies mit 18 Kohlenstoffatomen enthält, wird es mit "*" dupliziert.
Die in der Liste häufig verwendeten Methoden werden im Folgenden vorgestellt.
fatty_acids = ['FA 16:0', 'FA 18:0', 'FA 18:1', 'FA 18:2', 'FA 18:3']
fatty_acids_copy = fatty_acids.copy() #Eine Kopie machen
print(fatty_acids_copy)
fatty_acids.append('FA 20:4') #Fügen Sie am Ende ein Element hinzu
print(fatty_acids)
fatty_acids.extend(['FA 20:5', 'FA 22:6']) #Fügen Sie am Ende mehrere Elemente hinzu
print(fatty_acids)
fatty_acids.insert(1, 'FA 16:1') #Element zur angegebenen Indexnummer hinzufügen
print(fatty_acids)
fatty_acids.remove('FA 18:3') #Löschen Sie das angegebene Element
print(fatty_acids)
print(fatty_acids.pop()) #Löschen Sie das letzte Element und geben Sie das gelöschte Element aus
print(fatty_acids.pop(2)) #Löschen Sie das dritte Element und geben Sie das gelöschte Element aus
fatty_acids.sort(key=None, reverse=True) #Sortieren Sie die Elemente in absteigender Reihenfolge
print(fatty_acids)
fatty_acids.sort(key=None, reverse=False) #Sortieren Sie die Elemente in aufsteigender Reihenfolge
print(fatty_acids)
print(fatty_acids.index('FA 18:2')) #Indexnummer des angegebenen Elements
print(fatty_acids.count('FA 18:2')) #Anzahl der angegebenen Elemente
".extend (['FA 20: 5', 'FA 22: 6')" kann als ".append (['FA 20: 5', 'FA 22: 6'])" geschrieben werden. Das Ausführungsergebnis ändert sich jedoch. Wenn Sie "Erweitern" verwenden, werden zwei Elemente "FA 20: 5" und "FA 22: 6" hinzugefügt. Wenn Sie jedoch "Anhängen" verwenden, wird "[" FA 20 " Die Liste: 5 ',' FA 22: 6 '] `wird als ein Element hinzugefügt. Mit anderen Worten, wenn Sie "Anhängen" verwenden, wird die Liste in die Liste aufgenommen. Seien Sie vorsichtig, wenn Sie "Anhängen" und "Erweitern" richtig verwenden.
Zeichenfolgen können wie Listen behandelt werden. Sie können sich eine Zeichenfolge als Liste mit nur einem Zeichen vorstellen, sich auf das fünfte Zeichen von vorne beziehen und so weiter.
palmitic_acid = fatty_acids[0] #Liste "fett_erstes Element von "Säure"
print(palmitic_acid) # FA 16:0
print(palmitic_acid[0]) # 「FA 16:Das erste Zeichen der Zeichenfolge "0", dh "F"
print(len(palmitic_acid)) #Wortzahl
lipid_class = palmitic_acid[0:2]
print(lipid_class) # FA
Cn = int(palmitic_acid[3:5])
print(Cn) #16 (numerischer Wert)
Un = int(palmitic_acid[6])
print(Un) #0 (numerischer Wert)
Als fortgeschrittene Version sollten Sie die Anzahl der Kohlenstoffatome und Doppelbindungen der Fettsäuren in der SMILES-Notation zählen.
smiles_la = 'OC(CCCCCCC/C=C\C/C=C\CCCCC)=O' #LÄCHELN von Linolsäure
Cn = smiles_la.count('C') #Anzahl der Kohlenstoffatome
Un = smiles_la.count('=') - 1 #Anzahl der Doppelbindungen in der Kohlenstoffkette
linoleic_acid = f'FA {Cn}:{Un}' # f-string
print(linoleic_acid)
Ein Tupel ist ein listenartiger Datentyp, der mit tupple name = (Element 1, Element 2, ...)
erstellt werden kann.
Wie bei der Liste können Sie den Wert unter "Taple-Name [Indexnummer]" sehen, aber Sie können den Wert nicht aktualisieren.
Wenn Sie also ein Datenarray erstellen möchten, das Sie nicht neu schreiben möchten, können Sie taple verwenden.
fatty_acids = ('FA 16:0', 'FA 18:0', 'FA 18:1', 'FA 18:2', 'FA 18:3')
print(fatty_acids[0]) #Erstes Element
print(fatty_acids[1]) #Zweites Element
print(fatty_acids[-1]) #Erstes Element von hinten
print(fatty_acids[2:4]) #3. bis 4. Elemente
print(fatty_acids[3:]) #4. und nachfolgende Elemente
print(fatty_acids[:3]) #Bis zu 4 Elemente
print(fatty_acids[:-2]) #Das zweite Element von hinten
Ein Wörterbuch ist eine Eins-zu-Eins-Entsprechung zwischen "Schlüsseln" und "Werten" und einem Array dieser Schlüssel / Wert-Kombinationen.
Es kann mit dictionary name = {key 1: value 1, key 2: value 2, ...}
erstellt werden.
Cn = 18 #Anzahl der Kohlenstoffatome (Kettenlänge) der Fettsäure
Un = 2 #Anzahl der Doppelbindungen (Ungesättigtheit)
num_C = Cn #Anzahl der Kohlenstoffatome im gesamten Molekül
num_H = Cn * 2 - Un * 2 #Anzahl der Wasserstoffatome im gesamten Molekül
num_O = 2 #Anzahl der Sauerstoffatome im gesamten Molekül
molecular_formula = {'C': num_C, 'H': num_H, 'O': num_O}
Im obigen Beispiel wird ein Wörterbuch mit der Anzahl der Atome als Wert erstellt, wobei das Elementsymbol als Schlüssel verwendet wird. So zeigen Sie alle Schlüssel und Werte im Wörterbuch an:
print(molecular_formula.keys()) #Liste der Schlüssel
print(molecular_formula.values()) #Liste von Werten
print(molecular_formula.items()) #Liste der Schlüssel- und Wertetupel
Mit Wörterbuchname [Schlüssel] = Wert
wird der Wert aktualisiert, wenn der Schlüssel bereits im Wörterbuch vorhanden ist, und ein neuer Schlüssel und Wert werden hinzugefügt, wenn der Schlüssel nicht vorhanden ist.
molecular_formula['C'] = 16 #Umschreiben von Werten
molecular_formula['H'] = 32 #Umschreiben von Werten
molecular_formula['N'] = 0 #Fügen Sie neue Schlüssel und Werte hinzu
print(molecular_formula)
Ein Set kann mit set name = {}
erstellt werden.
Es gibt kein Ordnungskonzept und es wird verwendet, um zu beurteilen, ob es ein bestimmtes Element gibt oder nicht, ohne das Element durch die Indexnummer anzugeben.
fatty_acids = {'FA 16:0', 'FA 18:0', 'FA 18:1', 'FA 18:2', 'FA 18:3'}
Hier haben wir die Datenstruktur von Python erklärt und uns dabei auf praktisches Wissen konzentriert, das in der Chemoinfomatik verwendet werden kann. Lassen Sie uns die wichtigsten Punkte noch einmal überprüfen.
Im folgenden Artikel wird die bedingte Verzweigung in Python erläutert.
Bedingte Verzweigung von Python durch Chemoinfomatik gelernt
Recommended Posts