Biopython – Entrada/salida de secuencia

Biopython tiene un módulo Bio.SeqIO incorporado que proporciona funcionalidades para leer y escribir secuencias desde o hacia un archivo, respectivamente. Bio.SeqIO admite casi todos los formatos de manejo de archivos utilizados en bioinformática. Biopython sigue estrictamente el enfoque único para representar la secuencia de datos analizados al usuario con el objeto SeqRecord .

SeqRecord

El objeto SeqRecord proporcionado por el módulo Bio.SeqRecord contiene los metadatos de la secuencia, así como la información sobre la secuencia. Algunos datos principales se enumeran a continuación:

Registro Descripción
secuencia Una secuencia real para ser analizada.
identificación Identidad principal de la secuencia, por defecto es de tipo string
nombre El nombre de la secuencia, por defecto es de tipo string.
descripción Muestra la información sobre la secuencia en formato legible por humanos.
anotaciones Diccionario que contiene información adicional relacionada con la secuencia.

Secuencia de lectura:

El módulo Biopython Seq tiene un método read() integrado que toma un archivo de secuencia y lo convierte en un solo SeqRecord de acuerdo con el formato del archivo. Es capaz de analizar archivos de secuencia que tienen exactamente un registro, si el archivo no tiene registros o tiene más de un registro, se genera una excepción. La sintaxis y los argumentos del método read() se dan a continuación:

Bio.SeqIO.read(handle, format, alphabet=None)
Argumentos  Descripción
resolver   Manejar al archivo o toma el nombre del archivo como una string (las versiones anteriores solo toman el mango)
formato   archivo ; formatear como una string
alfabeto Parámetro opcional, utilizado cuando el tipo de secuencia no se deduce automáticamente del archivo (por ejemplo, format = «fasta» ).

Python3

# Import libraries
from Bio import SeqIO
  
# Reading file
record = SeqIO.read("sequence.gb", "genbank")
  
# Showing records
print("ID: %s" % record.id)
print("Sequence length: %i" % len(record))
print("Sequence description: %s" % record.description)

Producción:

Secuencia de alabanza:

El método Parse() proporcionado por el módulo Bio.Seq se usa cuando tenemos que leer varios registros del identificador. Básicamente, convierte el archivo de secuencia en un iterador que devuelve SeqRecords . Si el archivo contiene datos de string, debe convertirse a handle para analizarlo. Los formatos de archivo en los que no se puede determinar el alfabeto, es útil especificar el alfabeto explícitamente (por ejemplo, FASTA). La sintaxis y los argumentos del método parse() se dan a continuación:

Bio.SeqIO.parse(handle, format, alphabet=None)
Argumentos Descripción
resolver Manejar al archivo o toma el nombre del archivo como una string (las versiones anteriores solo toman el mango)
formato Formato de archivo como una string
alfabeto El parámetro opcional, que se usa cuando el tipo de secuencia no se deduce automáticamente del archivo (por ejemplo, formato = «fasta» ).

Python3

# Import libraries
from Bio import SeqIO
  
# Parsing file
filename = "sequence.fasta"
for record in SeqIO.parse(filename, "fasta"):
  
    # Showing records
    print("ID: %s" % record.id)
    print("Sequence length: %i" % len(record))
    print("Sequence description: %s" % record.description)

Producción :

Escribir en secuencia:

Para escribir en el archivo, el módulo Bio.Seq tiene un método write() , que escribe el conjunto de secuencias en el archivo y devuelve un número entero que representa el número de registros escritos. Asegúrese de cerrar el identificador después de llamar al identificador, de lo contrario, los datos se descargarán en el disco. La sintaxis y los argumentos del método write() se dan a continuación:

Bio.SeqIO.write(sequences, handle, format)
Argumentos Descripción
secuencias Lista o iterador del objeto SeqRecord (o único SeqRecord en Biopython versión 1.54 o posterior)
resolver Manejar al archivo o toma el nombre del archivo como una string (las versiones anteriores solo toman el mango)
formato Formato de archivo para escribir como una string en minúsculas

Nota: Para descargar archivos haga clic aquí

Python3

# Import libraries
from Bio import SeqIO
from Bio.Seq import Seq
from Bio.SeqRecord import SeqRecord
  
rec1 = SeqRecord(Seq("MMYQQGCFAGGTVLRLAKDLAENNRGARVLVVCSEITAVTFRGPSETHLDSMVGQALFGD"
                     + "GAGAVIVGSDPDLSVERPLYELVWTGATLLPDSEGAIDGHLREVGLTFHLLKDVPGLISK"
                     + "NIEKSLKEAFTPLGISDWNSTFWIAHPGGPAILDQVEAKLGLKEEKMRATREVLSEYGNM"),
                 id="gi|14150838|gb|AAK54648.1|AF376133_1",
                 description="chalcone synthase [Cucumis sativus]")
  
rec2 = SeqRecord(Seq("MVTVEEFRRAQCAEGPATVMAIGTATPSNCVDQSTYPDYYFRITNSEHKVELKEKFKRMC"
                     + "EKSMIKKRYMHLTEEILKENPNICAYMAPSLDARQDIVVVEVPKLGKEAAQKAIKEWGQP"
                     + "KSKITHLVFCTTSGVDMPGCDYQLTKLLGLRPSVKRFMMYQQGCFAGGTVLRMAKDLAEN"
                     + "NKGARVLVVCSEITAVTFRGPNDTHLDSLVGQALFGDGAAAVIIGSDPIPEVERPLFELV"
                     + "SAAQTLLPDSEGAIDGHLREVGLTFHLLKDVPGLISKNIEKSLVEAFQPLGISDWNSLFW"
                     + "IAHPGGPAILDQVELKLGLKQEKLKATRKVLSNYGNMSSACVLFILDEMRKASAKEGLGT"
                     + "TGEGLEWGVLFGFGPGLTVETVVLHSVAT"),
                 id="gi|13925890|gb|AAK49457.1|",
                 description="chalcone synthase [Nicotiana tabacum]")
sequences = [rec1, rec2]
  
# Writing to file
with open("example.fasta", "w") as output_handle:
    SeqIO.write(sequences, output_handle, "fasta")
  
for record in SeqIO.parse("example.fasta", "fasta"):
    print("ID %s" % record.id)
    print("Sequence length %i" % len(record))

Producción:

Publicación traducida automáticamente

Artículo escrito por jeeteshgavande30 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *