Análisis de secuencias con Biostring

José Gallardo

Taller Escolar de Verano Genes y Genomas -

27/11/2020

Biostrings.

La librería Biostrings permite analizar secuencias de ADN, ARN y proteínas.

Tipos de objetos para manipular secuencias FASTA con Biostrings.

DNAString: Crea objetos con secuencias de ADN (DNA en ingles).

AAString: Crea objetos con secuencias de aminoácidos (AA).

Formato FASTA

Figura 1: Insulina humana en formato fasta

Figura 1: Insulina humana en formato fasta

Funciones básicas para manipular simples secuencias FASTA con Biostrings.

readDNAStringSet(): Importa una secuenciade de ADN o cromosoma a Rstudio.

readAAStringSet(): Importa una secuenciade de aminoácidos o proteínas a Rstudio.

names(): Nombre de la secuencia.

length() Determina el largo de la secuencia.

alphabetFrequency(): Determina la frecuencia de las distintas letras del código IUPAC para cada secuencia.

width(): Número de nucleótidos de la secuencias (Solo para cromosomas).

pairwiseAlignment(): Permite alinear y comparar dos secuencias de ADN o de aminoácidos.

Análisis del genoma del coronavirus SARS-COV-2 que causa gripe estacional usando librerías Biostrings.

# Importa genoma coronavirus a Rstudio
SARS_COV_2 <- readDNAStringSet(file="SARS_COV-2_genome.fasta")

# Nombres de las secuencias
names(SARS_COV_2)
## [1] "NC_045512.2 Severe acute respiratory syndrome coronavirus 2 isolate Wuhan-Hu-1, complete genome"
# Tamaño de las secuencias
width(SARS_COV_2)
## [1] 29903
# Frecuencia de nucleótidos donde se observa un gran numero de secuencias ddesconocidas "N"
alphabetFrequency(SARS_COV_2)
##         A    C    G    T M R W S Y K V H D B N - + .
## [1,] 8954 5492 5863 9594 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Análisis Proteína S del coronavirus SARS-COV-2 que causa gripe estacional.

# Importa genoma coronavirus a Rstudio
PROT_S_SARS_COV <- readAAStringSet(file="SARS_COV2_Proteina_S.fasta")

# Nombres de las secuencias
names(PROT_S_SARS_COV)
## [1] "YP_009724390.1 surface glycoprotein [Severe acute respiratory syndrome coronavirus 2]"
# Tamaño de las secuencias
width(PROT_S_SARS_COV)
## [1] 1273
# Frecuencia de nucleótidos donde se observa un gran numero de secuencias ddesconocidas "N"
alphabetFrequency(PROT_S_SARS_COV)
##       A  R  N  D  C  Q  E  G  H  I   L  K  M  F  P  S  T  W  Y  V U O B J Z X *
## [1,] 79 42 88 62 40 62 48 82 17 76 108 61 14 77 58 99 97 12 54 97 0 0 0 0 0 0 0
##      - + . other
## [1,] 0 0 0     0

Funciones básicas de alineamiento con Biostrings.

ali <- pairwiseAlignment(seq1, seq2, type=“overlap”): Crea objeto y realiza el alineamiento de dos secuencias.

print(Ali): Imprime el resultado del alineamiento de dos secuencias

compareStrings(Ali): Compara el alineamiento de dos secuencias

nmatch(Ali): Calcula número de coincidencias (Match)

nmismatch(Insulina_alineamiento): Calcula número de No - coincidencias (Mismatch)

pid(Ali): Calcula porcentaje de identidad.

Importa e imprime insulina humana y de chimpance

# Importa secuencia de insulina humana y de Chimpance a Rstudio
Insulina_humana <- readAAStringSet(file="Insulin_preproprotein_Homo_sapiens.fasta")

Insulina_humana
## AAStringSet object of length 1:
##     width seq                                               names               
## [1]   110 MALWMRLLPLLALLALWGPDPAA...KRGIVEQCCTSICSLYQLENYCN NP_000198.1 insul...
Insulina_Chimpance <- readAAStringSet(file="Insulin_preproprotein_Pantroglodytes.fasta")
Insulina_Chimpance
## AAStringSet object of length 1:
##     width seq                                               names               
## [1]   110 MALWMRLLPLLVLLALWGPDPAS...KRGIVEQCCTSICSLYQLENYCN NP_001008996.1 in...

Alineamiento de pares de secuencias Insulina humana e insulina de Chimpance:

# Realiza el alineamiento de dos secuencias
Insulina_alineamiento <-pairwiseAlignment(Insulina_humana, Insulina_Chimpance, type="overlap")

# Imprime el resultado del alineamiento de dos secuencias
print(Insulina_alineamiento)
## Overlap PairwiseAlignmentsSingleSubject (1 of 1)
## pattern: [1] MALWMRLLPLLALLALWGPDPAAAFVNQHLCG...PLALEGSLQKRGIVEQCCTSICSLYQLENYCN
## subject: [1] MALWMRLLPLLVLLALWGPDPASAFVNQHLCG...PLALEGSLQKRGIVEQCCTSICSLYQLENYCN
## score: 452.3185
# Compara el alineamiento de dos secuencias
compareStrings(Insulina_alineamiento)
## [1] "MALWMRLLPLL?LLALWGPDPA?AFVNQHLCGSHLVEALYLVCGERGFFYTPKTRREAEDLQVGQVELGGGPGAGSLQPLALEGSLQKRGIVEQCCTSICSLYQLENYCN"

Calculo de Match, Mismatch y % identidad.

# Calcula coincidencias 
nmatch(Insulina_alineamiento)
## [1] 108
# Calcula No - coincidencias
nmismatch(Insulina_alineamiento)
## [1] 2
# Calcula porcentaje de identidad
pid(Insulina_alineamiento)
## [1] 98.18182

Referencias científicas.

1 - Genoma completo SRAS-COV2 Link.

2.- Secuencia preproteína Insulina humana Link