In einigen Datenbanken wird nur die ID in fasta beschrieben, und die dieser ID entsprechende Beschreibung befindet sich möglicherweise in einer separaten Datei.
Dies kann nützlich sein AHRD (https://github.com/groupschoof/AHRD/blob/master/README.textile) Weil es nicht zur Optimierung von Anmerkungen mit geeignet ist Ich habe das folgende Skript geschrieben, das die beiden Dateien zusammenführt.
fasta_annotation_merge.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#fasta_Ändern Sie die Anmerkungsinformationen mit dem ID-Element als Schlüssel
import sys
from Bio import SeqIO
import csv
fasta_in = sys.argv[1] #Geben Sie im ersten Argument die Fasta-Datei an, die Sie ändern möchten.
changer_in = sys.argv[2] #KeyID im zweiten Argument durch Tabulatoren getrennt\t Geben Sie die Datei an, die die Anmerkung beschreibt
for q in open(changer_in, "r"): #Öffnen Sie die Anmerkungsinformationsdatei
change = q.split('\t') #Fügen Sie die Änderungsliste durch Tabulatoren getrennt ein
for record in SeqIO.parse(fasta_in, 'fasta'): #Öffnen Sie die Fasta-Datei Parse mit SeqIO(Lesen Sie jeweils einen Artikel.
id_part = record.id #Lesen Sie den ID-Teil von fasta
seq = record.seq #Lesen Sie den Array-Teil von Fastan
if id_part == change[0]: #Wenn der ID-Teil der Fasta-Datei und der ID-Teil des Wechslerelements übereinstimmen. ..
fasta_seq = '>' + id_part + ' '+ change[1] + '\n' + seq + '\n' #Im Fasta-Format anordnen
print(fasta_seq) #Ausgabe fasta auf Standardausgabe