Posgrado: Martes 11 de marzo. Predicción de genes. Anotación.
El ejercicio resuelto (negritas) se pone como comentario en esta entrada, se evaluará.
1. Haz una carpeta nueva que se llame gene_prediction
2. Coloca un enlace simbólico del genoma de Bacillus subtilis, de la carpeta donde viva a gene_prediction
ln -s /home/biolinux/NC_000964.fna /home/biolinux/gene_prediction/subtilis.fna
3. Escribe ls -lh y ¿qué te dice el nuevo archivo subtilis.fna?
4. ¿Qué utilidad representa el usar enlaces simbólicos?
5. Se presenta a continuación una serie de instrucciones para predecir genes de novo, de una secuencia genómica, con el programa glimmer3, tienes que adaptarlo a tus archivos.
long-orfs -n -t 1.15 genom.seq run1.longorfs
extract -t genom.seq run1.longorfs > run1.train
build-icm -r run1.icm < run1.train
glimmer3 -o50 -g110 -t30 genom.seq run1.icm run1
¿Qué es long-orfs? ¿qué se controla con las opciones -n y -t?
¿Qué es build-icm?
Del comando glimmer3, ¿qué significan -o -g y -t?
6. Escribe que archivos se generan después del proceso de identificación de genes
7. En qué archivo generado, se encuentra esta información, ¿qué quiere decir?:
----- Start ----- --- Length ---- ------------- Scores -------------
ID Frame of Orf of Gene Stop of Orf of Gene Raw InFrm F1 F2 F3 R1 R2 R3 NC
+2 4215551 4215599 115 168 120 -12.63 0 - 0 - - 2 - 97
+3 171 204 332 159 126 -13.98 0 - - 0 - - - 99
-3 536 500 306 228 192 -7.33 0 - - - - - 0 99
-1 651 648 448 201 198 -3.08 0 - 91 - 0 - - 8
+3 633 666 818 183 150 -7.50 0 - 99 0 - 0 - 0
-2 847 733 614 231 117 -3.36 0 - 99 - - 0 - 0
-2 1063 1060 887 174 171 -0.12 0 - 99 - - 0 - 0
8. Abre un archivo de texto nuevo, copia el siguiente script y guarda el archivo en la carpeta donde estas trabajando (original de este sitio)
#!/usr/bin/env python import sys from Bio.SeqRecord import SeqRecord from Bio import SeqIO glimmer_file = sys.argv[1] fasta_file = sys.argv[2] # Read the sequence file seq_record = SeqIO.parse(open(fasta_file),"fasta").next() outseqrecords = [] # Read the glimmer file, record by record for inline in file(glimmer_file): if '>' in inline: seqname = inline.split()[0][1:] outfilename = "%s_g3.tfa" % (seqname) continue if "orf" not in inline: continue orfname, sbegin, send, rf, score = inline.strip().split() sbegin = int(sbegin) send = int(send) rf = int(rf) # reverse complement if rf < 0: sbegin, send = send, sbegin sbegin -= 1 # Python indexes start a 0 score = float(score) # split the sequence record newseq = seq_record.seq[sbegin:send] if rf < 0: newseq = newseq.reverse_complement() # Add a sequence record to the output seqrecord_description = "begin=%d end=%d rf=%d score=%.2f" % (sbegin+1, send, rf, score) outseqrecords.append(SeqRecord(newseq,id=seqname+"_"+orfname, description=seqrecord_description)) SeqIO.write(outseqrecords,open(outfilename,"w"),"fasta")
9. Ejecuta el script de la siguiente forma:
python nombre_de_tu_script archivo.predicted secuencia.fna
10. ¿Qué hace el script de python? ¿Qué archivo genera?
11. Utiliza el comando transeq (emboss) en el último archivo generado
12. ¿Qué diferencia hay entre transeq, aplicado en este último archivo y el usar sixpack?
13. En el archivo generado por transeq, haz un blastp con esta secuencia (usando el archivo de transeq como base de datos):
MSLLQFQQVGYWYKNKSQPLFQDINISFQKGKFYTIVGTSGTGKTTFLSLAGGLDAPKEGNILYDGKAVS KIGLTNFRNQYVSIVFQAYNLLPYMTALQNVTTAMEITGSKEKNKESYALDMLQKVGINEKQARQKVLTL SGGQQQRVSITRAFCCDTDLIVADEPTGNLDEDTSKEIVRLFQDLAHKEDKCVIMVTHDEQIAKVSDINI RLSRGSFTVKENVAVV
¿Cuántas secuencias se reconocen en el archivo de transeq?
14. Con la secuencia anterior haz un blast contra la base de datos del NR, en la página de BLAST. ¿A qué tipo de secuencia corresponde esta proteína?
15. Descarga este archivo y descomprimelo en la misma carpeta en la que has estado trabajando: https://copy.com/wu272SfScDSC
¿Qué son estos archivos?
Las abreviaciones en los nombres corresponden a:
MET Metals
OTCN Osmoprotectans Taurine Cyanate and Nitrate
OPN Oligopeptides and Nickel
HAA Hydrophobic amino acids and amides
ISVH Iron-Siderophores Vitamin B-12 and Hemin
DLM D- L-Methionine and derivates
PHN Phosphonates and phosphites
PAO Polar amino acid and opines
OSP Oligosaccharides and polyols
MOS Monosaccharides
MOI Mineral and Organic
16. Escoge uno de los archivos que acabas de descomprimir y utiliza el comando
hmmsearch archivo.hmm transeq.faa
17. Corre todos los archivos hmm contra la misma secuencia de aminoácidos predicha, una forma de automatizar el proceso es o hacer un batch, o hacer un bucle (loop)
http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-7.html
18. Compara los resultados que obtienes con los que se publicaron en esta tabla:
Los datos de la tabla anterior fueron graficados así:
19. ¿Cómo se llego a la conclusión que había un solo representante de DLM en el genoma de Bacillus subtilis?
20. ¿Qué secuencia considerarías que es el representante de DLM en el genoma de B. subtilis?
21. ¿Qué diferencias hay entre anotar con Blast y HMMer?
6 comentarios
3) Lo mismo que el archivo original. Es un archivo en formato FASTA con la secuencia del genoma.
5)Long ORFs encuentra los marcos de lectura lo más largos posible sin codones STOP en el interior.-n sirve para quitar los encabezados y -t para mostrar sólo los genes con valor de distancia de entropía menores a un umbral. build -icm crea un archivo de un modelo de Markov que describa las probabilidades de cambio de estado. En el comando glimmer 3: -o se refiere al umbral de sobrelapamiento entre genes aceptado, -g a la longitud mínima de los genes y -t el umbral para considerar a una región como un gen potencial.
6)Se crearon archivos .detail, .icm, .longorfs, .predict y .train
7)En el archivo .detail. Nos dice la longitud de los ORFs y de los genes predichos y su posición
8)El script de python no me funciono y desgraciadamente no pude continuar con el jercicio
Hola a todos!
Los que sean codos (como yo) con el disco duro y no instalaron todo biolinux necesitan instalar aparte glimmer3. NOTA:es necesario que instalen los repos, como el Dr Alacaráz específico en la primer práctica:
Entonces
~$ sudo apt-get install glimmer3
Para ejecutar las aplicaciones de glimmer3 es es necesario «llamar» primero a glimmer y luego especificar el programa que necesiten. Algo así:
~$ glimmer long-orfs
~$ glimer extract
Uso linux mint 16 «Petra» de 64-bits, hasta ahora todo funciona bien.
Saludos
Ya pude correr el script de python y continúo con mi reporte.
10)El script genera un archivo .tfa y contiene las coordenadas y score de cada ORF
12)Sixpack no puede traducir a aminoácidos de manera simultánea varios ORFs (simplemente pone todas las traducciones posibles para los 6 marcos de lectura posibles de una secuencia), mientras que transeq si puede. Transeq toma en cuenta los ORFs predichos.
La secuencia de péptidos problema es un ABC transporter, de acuerdo a la búsqueda blastp en la base NR del sitio de BLAST.
15)Los archivos hmm contienen los alineamientos producidos para secuencias de aminoácidos usando modelos de Markov ocultos. Cada archivo corresponde a transportadores para diferentes tipos de moléculas.
16)Gracias a las técnicas de anotación usando modelos de Markov ocultos, que permiten la identificación de genes homólogos con un alto grado de confianza. Sólo uno de los ORFs de B. subtilis predichos mostraba semejanza significativa con los genes transportadores de D-L metionina y derivados.
17)No pude correr el BASH para ver cuantos y cuales ORFs eran propuestos como homólogos con los genes que codifican para cada tipo de transportador 🙁 Lo intentaré en los siguientes días
18)Considero que es más confiable anotar con HMMer, ya que a diferencia de BLAST HMMer no sólo toma en cuenta la similitud en la secuencia de aminoácidos, sino que también toma en cuenta la probabilidad de que las secuecnias analizadas correspondan a exones, tomando en cuenta la longitud de los ORFs y su composición nucleotídica
3.- Que el usuario tiene permiso de lectura, escritura, y que es un acceso directo.
5.- Los long-orf son secuencias de nucleotidos largas (mas de 500 bp) que no se sobrelapan entre ellas. El programa long-orfs busca secuencias de genes potenciales que no se sobrelapen demasiado, entre los codones de inicio y término. El parámetro -n indica que no se incluya la información de cabecera en el archivo de salida, únicamente las lineas de las coordenadas de los orfs. El parámetro -t indica que sólo los genes con un puntaje dado sean considerados.
El programa Build-ICM aplica el modelo interpolado de Markov, para la secuencia de nucléotidos especificada. Para esto estima la probabilidad de la distribución del siguiente caracter, a partir del set de datos de entrenamiento (interpola en función de sus propios datos).
En el comando glimmer3 -o establece el valor máximo de sobrelapamiento. La opción -g indica al programa la longtud minima del gen, y la opción -t establece el valor de corte para concideralo un gen.
6.- run1.detail y run1.predict
7.- En run1.detail. El id frame indica el nucleótido en el que inicia la ventana de lectura y si es la cadena lider (+) o complementaria (-). Start, indica la coordenada de inicio de la ventana de lectura (of Orf), y del gen predicho (of gene). Stop indica la coordenada del triplete de paro. lenghth, indica la longitud de nucleótidos de la ventana de lectura (of Orf), y del gen predicho (of gene). Scores indica la distribución de puntajes. Especifiacmente Raw score muestra la tasa logaritmica de odds en las ventanas codificantes del modelo interpolado de Markov en relación con el puntaje del modelo independiente (no codificante). InFrm El el puntaje normalizado de los genes en los marcos de lectura. F1-3,R1-3 son los puntajes normalizados de cada gen en cada una de los marcos de lectura. La presencia de «-» indica que existe un codon de para en la ventana. NC es el puntaje normalizado independiente (no codificante o intergenetico), y que no presenta por definición ningún codon de paro.
10.- El script de python extrae las secuencias con los orfs del archivo run1.predict del genoma sin anotar. Genera un archivo llamado: gi|255767013|ref|NC_000964.3|_g3.tfa
12.- La diferencia entre transeq y sixpack es que transeq traduce y da los marcos de lectura en un solo archivo, mientras que sixpack da dos archivos con la información separada.
15.- Secuencias de aminoácidos con coordenadas.
19.- Por el porcentaje del los datos normalizados en relación al tamaño del genoma.
20.- _orf04672_1
21.-Hammer tiene mayor precisión, y capacidad de detectar secuencias homologas por usar el algoritmo de las cadenas ocultas de Markov.
3. la información de los genes, las secuencias y los nombres de cada una
– las coordenadas donde se ubican cada uno de los genes.
– un mapa probabilistico en donde se «concatena» la información mutua entre las dos bases de datos (el porcentaje de información mutua).
– Glimmer
– -o largo máximo de empalme
– -g largo min de la secuencia
– -t Score del llamado para poder identificar al gen
-Genera: .tfa, .details, .icm, .train
-.details: la identificaci{on de los genes, el ORF, la localización, el largo,y el score.
10. genera un archivo con la información de las secuencias, el marco de lectura de los genes y el score
11. script, genera las secuencias codificadas en aa de las regiones anotadas.
six pack pone los seis marcos de lectura, transeq pone el marco de lectura codificante para el gen.
14. NO tengo correspondencia en el BLAST, pero debería ser una ATPasa (interfaz)
HASTA aquí llegué
Preguntas sesión del 11 de marzo PREDICCIÓN Y ANOTACIÓN DE GENES.
3.- Escribe ls –lh que dice el nuevo archivo?
Nos dice su tamaño, ubicación, propietario del archivo y los directorios con los que se cuenta.
5.- Que es long-orfs?
Es una parte del programa glimmer y se enfoca en la búsqueda de genes, especialmente de bacterias, archaea, y virus. Este programa busca marcos de lectura amplios en los archivos seleccionados en la línea de comandos, eliminando aquellos que presenten demasiado solapamiento e imprime las coordenadas resultantes.
¿Qué se controla con las opciones -n y -t?
-t = es un comando de corte, se hace antes de cualquier paso posterior en el algoritmo.
-n= Con esta opción, el archivo de salida sólo contendrá las coordenadas de los ORFs seleccionados.
Que es build-icm?
Este programa construye un modelo de contexto con interpolación (interpolated context model –ICM) a partir de un juego de secuencias.
Del comando glimmer3, ¿qué significan -o -g y -t?
-o = configura la longitud mínima de solapamiento.
-g =ajusta la longitud mínima de los genes
-t= asigna una puntuación mínima para nombrar algunos de los modelo como gen, si la puntuación es correcta, se le considera un gen potencial y se le asigna un número.
6. Escribe que archivos se generan después del proceso de identificación de genes
-run1.detail, run1.longorfs, run1.icm, run1.predict, run1.train.
7. En qué archivo generado, se encuentra esta información, ¿qué quiere decir?:
En el archivo run1.details.
La columna 1 es un número de identificación para fines de referencia. Se asigna secuencialmente comenzando con 1 para todos los ORFs cuya puntuación del gen es al menos 90.
Columna 2 es el marco de lectura del ORF. Tres forward (F1, F2 y F3) y tres Reverse (R1, R2 y R3). Estos corresponden con los títulos para las puntuaciones en las columnas 9-14.
Columna 3 es la posición de inicio de la ORF, es decir, la primera base después del codón de parada anterior.
Columna 4 es la posición de la primera base del primer codón de inicio en la ORF.
Columna 5 es la posición de la última base antes del codón de parada.
Columnas 6 y 7 son las longitudes de la ORF y gen, respectivamente.
Columna 8 es la banda sonora de la región del gen. Es la probabilidad ( como porcentaje) que el modelo de Markov está en el marco correcto. Este valor coincide con el valor en la columna correspondiente de las puntuaciones de trama – un ORF en el marco de lectura R1 tiene una puntuación de gene igual a el valor en la columna de la R1 de las puntuaciones de marco para que orf.
Columnas 9-14 son las calificaciones de la región del gen en cada uno de los seis marcos de lectura. Es la probabilidad (como un porcentaje) que el modelo de Markov en ese marco genera esta Secuencia.
Columna 15 es la probabilidad como un porcentaje de que se generó la secuencia de gen por un Modelo de probabilidades independientes para cada base, y representa a en cierta medida la probabilidad de que la secuencia es » aleatoria «.
10.- ¿Qué hace el script de python? ¿Qué archivo genera?
es un archivo de texto plano con la extensión .py. Incorpora módulos excepciones, tipos de datos dinámicos. Python combina potencia con una sintaxis muy clara. Es utilizable como un lenguaje de extensión para aplicaciones que necesitan una interfaz programable.
12. ¿Qué diferencia hay entre transeq, aplicado en este último archivo y el usar sixpack?
Transeq traslada las secuencias de nucleótidos a sus correspondientes secuencias, mientras que sixpack permite visualizar la traducción en 6 marcos de lectura y elegir cual es el mejor en forma gráfica.
¿Qué son estos archivos?
Son secuencias alineadas de diferentes tipos de proteínas, utilizando modelos HMM’s, que utilizan algoritmos específicos para cada familia de secuencias.
19. ¿Cómo se llego a la conclusión que había un solo representante de DLM en el genoma de Bacillus subtilis?
Solo presenta una coincidencia en ese transportador, a diferencia de las demás proteínas.
21. ¿Qué diferencias hay entre anotar con Blast y HMMer?
Blast utiliza un nivel de anotación que se podría decir es básico, pues se utiliza para encontrar similitudes y anotar genomas basado en eso. Por otro lado HMMer tiene mayor poder de análisis, ya que permite tener más información a la plataforma de anotación. La información adicional permite anotadores manuales para encontrar discrepancias entre los genes que se dan la misma anotación.
Los comentarios están cerrados.