Práctica N° 3 Manejo de programas para inferencia filogenética: TNT
Por: PhD. Jonathan Liria
Universidad Regional Amazónica IKIAM
Ejercicios:
1.1. Verifique utilizando el bloc de notas (=notepad) el archivo que se exportó desde el programa
Mesquite. La estructura del archivo debería ser similar al que se muestra a continuación:
El formato reconocido por TNT posee los siguientes comandos: XREAD (lee una matriz), CNAMES
(lee la lista de caracteres), y TREAD (lee un conjunto de árboles en notación parentética). Existen
más comandos que se irán viendo a lo largo de la práctica.
1.2. Ejecute el programa TNT. Seguidamente vaya al menú File � Open input file:
Busque y ejecute el archivo de datos con la matriz de parásitos hipotéticos.
Utilice el menú Trees �View para verificar los árboles que se almacenaron luego de la búsqueda
con Mesquite:
Utilice las teclas de función en su teclado: F1, F2, F3, F4, F5 y F6. Cada una de ellas tiene efecto
sobre el árbol que se está graficando. Así por ejemplo, las teclas F3 y F4 expanden o comprimen el
árbol en sentido horizontal.
Si Ud desea cambiar la raíz del árbol, por ejemplo enraizando con las “Especie_X_X”, proceda de la
siguiente seleccionando el menú Data � Outgroup taxón
En la pestaña, seleccione la especie deseada para enraizar los árboles. Luego pulse el botón “Ok”.
Si los árboles no cambian, vaya al menú Tree � Reroot y seleccione reenraizar (=reroot). ¿Por qué
deben enraizarse las soluciones con respecto al taxón “X_X”?
Mapeo de caracteres. Vaya al menú Optimize � Synapomorphies � Map synapomorphies:
Describa lo sucedido. Utilice esta opción para comparar cada uno de los árboles obtenidos en
Mesquite con el que Ud. construyó mediante argumentación de Hennig. ¿Los resultados son
iguales?
Ahora utilice la opción Optimize � Synapomorphies � Map Common synapomorphies
Describa lo sucedido. Explique porque al mapear las sinapomorfías comunes se obtuvo este
resultado.
Verificando estadísticos del árbol. Vaya al menú Optimize � Tree length. Este comando permite
calcular el largo de los arboles almacenados en memoria. Anote en su cuaderno esta información.
Escriba el siguiente comando en la celda que se encuentra en la parte inferior de la ventana:
minmax* luego presione enter
El comando (=minmax) devuelve en formato de tabla los pasos mínimos y máximos por carácter,
para los árboles almacenados en memoria. ¿Qué estadístico puede deducirse a partir de dichas
variables?
Ejecutando macros para realizar procesos. Descargue, el macro stats.run en el siguiente enlace:
http://phylo.wikidot.com/tntwiki
El archivo descargado debe colocarse en el mismo lugar (carpeta o directorio) donde se encuentra
la matriz de datos y árboles.
Coloque en la línea de comando de TNT (parte inferior de la ventana) la siguiente instrucción:
run stats.run;
Presione enter, y describa que sucede. Anote los valores que se presenten en la tabla.
Otra de las ventajas de TNT es que pueden realizarse distintos macros para procesos particulares.
Así por ejemplo, existe un macro que permite hacer la recodificación de caracteres continuos a
discretos usando el método de Gap-Weighting.
1.3. Realizando una corrida de datos bajo el método de enumeración implícita (=branch and
bound). Seleccione el menú Analyze � Implicit enumeration ; debe mostrarse otra ventana
como:
Seleccione el botón ok. ¿Cuantos árboles se obtienen? Determine las estadísticas básicas: longitud,
consistencia, y retención. Compare sus resultados con los obtenidos en Mesquite.
1.4. Efectuando una corrida de enumeración implícita con datos combinados del tipo continuo y
discreto. Ejecute la matriz contin.tnt ; al realizar este proceso se le advertirá que los datos
serán reemplazados por la nueva matriz.
Acepte y vaya al menú Data � Show matrix ; allí podrá apreciar los tipos de caracteres que posee
la matriz “contin.tnt”.
Esta matriz posee dos bloques de caracteres: Uno continuo (primer bloque) y otro discreto
(segundo bloque).
Seleccione el menú Data � Character groups/blocks � Create groups from data blocks
El programa indica que se crearon dos bloques de datos.
Realice una corrida con enumeración implícita, menú Analyze � Implicit enumeration
Describa sus resultados utilizando el visor de árboles, menú Trees �View , realice una captura de
pantalla de este árbol.
Haga el mapeo de caracteres, menú Optimize � Characters � Character mapping , con el botón
enter puede avanzar por cada carácter:
¿Qué sucede cuando llega a los caracteres discretos (segundo bloque)?
Proceda a desactivar el bloque de caracteres continuos. Utilice el menú Data � Characters
settings
Seleccione la opción “inactive” y luego pulse el botón “GROUPS”. Proceda a inactivar el Block_1:
El Block_1 debe pasar al lado de la columna “Select”. Seguidamente pulse el botón “OK”, y
nuevamente el botón “OK”.
Repita una corrida con enumeración implícita, y compare el/los nuevo(s) árbol(es) con el realizado
a partir de ambos bloques de datos. ¿Difieren? ¿En que grupos?
1.5. Análisis de datos más complejos (mayor número de taxa y caracteres). Abra la matriz “zilla.tnt”
con el menú File � Open input file
Realice una corrida tradicional, con el menú Analyze � Traditional search
La ventana de búsquedas tradicionales presenta varias alternativas:
Cambie los siguientes parámetros,
repls. (numbers of add.seqs.) = 50
tres to save per replication = 25
Pulse el botón “Search” , y observe que sucede. ¿Cuánto tiempo tardó el programa en realizar el
análisis? ¿Cuantos árboles se obtuvieron? ¿qué longitud presentan?
Fíjese que aparece un mensaje de advertencia. El programa le indica que debe aumentar la
memoria del buffer de árboles, porque actualmente está en 100. Para ello, vaya al menú Settings
� Memory
Cambie el parámetro Max Trees = 10000
Repita la corrida de búsquedas tradicionales con los valores indicados. Anote sus observaciones.
Repita la corrida de búsqueda tradicional, pero altere los parámetros:
repls. (numbers of add.seqs.) = 100
tres to save per replication = 25
¿Obtuvo árboles menores a los de la corrida anterior? ¿Cómo interpreta el mensaje “some
replications overflowed”?
Realice otra corrida, pero altere los parámetros:
repls. (numbers of add.seqs.) = 100
tres to save per replication = 50
Anote sus observaciones.
Como se puede apreciar, esta matriz de datos debido a sus dimensiones debería analizarse con
algoritmos adicionales.
Tomado de: The Parsimony Ratchet, a New Method for Rapid Parsimony Analysis
Según este artículo (Figura 1), a los noventa minutos el autor (Nixon, 1999) encuentra árboles de
longitud 16218 pasos.
1.6. Análisis de datos más complejos con algoritmos más agresivos. Realice una corrida con nuevas
tecnologías, con el menú Analyze � New Technology search
Como puede apreciarse, la venta desplegada de New Technology search muestra muchas
opciones:
Selecciones todas las opciones de “Use…” Deben marcarse las búsquedas sectoriales, Ratchet,
Drift, y Tree Fusing.
Los algoritmos utilizados aquí están descritos en:
Analysing large data sets in reasonable time: solutions for composite optima
Techniques for analysing large data sets
Realice una búsqueda con los parámetros por defecto. Pulse el boto “Search”. ¿Cuántos arboles
obtiene? ¿Qué longitud presentan? Compare sus resultados con las otras corridas realizadas con
los algoritmos tradicionales.
Repita la búsqueda con nuevas tecnologías, pero modifique los siguientes parámetros:
Drive search = 10
Find min. length = 3
Importante: Siempre verifique que se están utilizando los cuatro algoritmos de búsqueda.
Anote sus observaciones. Es importante que observe la información de “Total rearrengements
examined”.
Repita la búsqueda con nuevas tecnologías, pero modifique sólo este parámetro:
Check level every = 3
Anote sus observaciones.
1.7. Pesado de caracteres. Abra la matriz “example.tnt” con el menú File � Open input file
Realice una corrida tomando en cuenta el número de taxa que posee la matriz. Utilice el macro
“stats.run” para verificar los índices de consistencia y retención. Anote sus observaciones.
Vaya al menú Settings � Implied weighting � Basic settings
Para discusión sobre la aplicación del pesado de caracteres, puede consultar:
Weighting against homoplasy improves phylogenetic analysis of morphological data sets
En la ventana que se despliega seleccione la opción, “using implied weighting”:
Se indica que la constante de concavidad utilizada será K=3. Pulse Ok, y realice una corrida con los
mismos parámetros que realizó con base a pesos iguales. ¿Nota alguna diferencia? ¿Cuántos
árboles se obtienen?
Una forma de visualizar la información, grupos monofiléticos, en los árboles es mediante un
consenso estricto. Para ello vaya al menú Trees � Consensus
Se despliega una ventana con varias opciones:
Por defecto ya está seleccionada la opción “Strict (=Nelsen)”, pulse el botón Ok y realice una
captura de pantalla. Recuerde usar los comandos que comprimen el árbol (Ej.: las teclas F3 y F4
expanden o comprimen el árbol en sentido horizontal). También puede usar pulsar la tecla “m” en
el teclado y se guardará un archivo de Windows metafile:
Guarde el consenso estricto de la corrida con K=3.
Desactive los pesos (menú Settings � Implied weighting � Basic settings), repita la corrida, y
realice un consenso estricto. Finalmente efectué una captura de pantalla de este consenso y
guarde el archivo en formato metafile.
En equipos de tres personas, realice corridas con distintos valores de K, y complete la siguiente
tabla:
Concavidad Longitud de los árboles Número de árboles Grupos monofiléticos
Sin pesos
K=1
K=2
K=3
K=4
K=5
K=6
1.8. Análisis de datos morfogeométricos (=landmarks). Abra la matriz “Landmark_example.tnt” con
el menú File � Open input file , utilice la opción de ver la matriz.
Una vez finalizada la corrida, realice el mapeo de los caracteres o configuraciones de puntos
anatómicos (=landmarks).
Menú Characters � Map landmarks
¿Porqué existen configuraciones en grises? Verifique la matriz original (use el bloc de notas para
ver los datos de los taxa 1, 3 y 11).
En el modo de vista de configuraciones, Usted puede pulsar la techa “h” para recibir ayuda de
algunos comandos de visualización:
Utilice algunos de los comandos.
Puede crear bloques de caracteres (menú Data � Character groups/blocks � Create groups from
data blocks), para desactivar las configuraciones que desee y repetir corridas. Es una forma de ver
el efecto de cada configuración sobre el análisis combinado.
1.9. Análisis de datos moleculares. Ingrese en el portal de NCBI
(https://www.ncbi.nlm.nih.gov/genbank/) y coloque los siguientes códigos de acceso a
secuencias:
Especie Marcador Código GenBank
Tapirus indicus Cytb JX014331.1
Tapirus bairdii Cytb JF718880.1
Tapirus pinchaque Cytb JF718878.1
Tapirus terrestris Cytb JF718879.1
Descargue cada secuencia en formato Fasta, y utilizando el bloc de notas cree un archivo similar a
este:
>Tapirus_indicus
CCCCCCCCCCCCCCCCGGGGGGGGGGGGCCCGGCCGGGTTTTTGGGGGTTAAACGCGCGCGTAAAAAGCA
>Tapirus_bairdii
GGGCCCCCGGGGCCCCCCATTATTCCCCCCCGGGGGTTTTTTTAAACGCGCGTCCCGGGCG
>Tapirus_pinchaque
GGGGGGCCCCCCCCCCGGGGGCAAAATTGCCGGGTTTTTCCCCCTTAAACGCGCGTGGGGGGCG
>Tapirus_terrestris
AAAAGGCCCAACCCCGGGGGCAAAATTGCCGGGTTTTTCCCCCTTAAACGCGCGTGGGGG
Guarde este archivo como Tapirus_no_alineado.fas
Utilice el programa ClustalX2 para abrir este archivo (File � Load Sequences), y realizar un
alineamiento:
Al abrir el archivo se debería apreciar algo como:
Con las cuatro secuencias; nótese que no están alineadas.
Modifique las opciones de salida, con la opción: Alignment � Output Format Options , seleccione
sólo la opción FASTA.
Realice un alineamiento múltiple con el menú: Alignment � Do complete alignment
Cambie el nombre del archivo de salida por: Tapirus_alineado.fas
Una vez alineado, se debería apreciar algo como:
Recuerde que se utilizaron los parámetros por defecto, para realizar este alineamiento.
Cierre el programa, y ejecute TNT para importar los datos moleculares. Utilice el menú File �
Merge / Import data � Read a Fasta file
Utilice el menú para ver la matriz de datos y constatar que la importación se realizó
correctamente, y los datos son considerados como moleculares.
Reenraíce con el taxón Tapirus indicus, y seguidamente realice una corrida con enumeración
implícita. Compare los resultados de la filogenia obtenida con otros análisis filogenéticos en
especies de Tapirus. ¿Concuerdan los resultados?
• Phylogeography of the Mountain Tapir (Tapirus pinchaque) and the Central American
Tapir (Tapirus bairdii) and the Origins of the Three Latin-American Tapirs by Means of
mtCyt-B Sequences.
• Molecular phylogeny and evolution of the Perissodactyla.
Repita el procedimiento, pero agregue dos secuencias adicionales de Cytb para las especies:
Tapirus_bairdii, Tapirus_pinchaque, y Tapirus_terrestris. Realice una tabla donde coloque los
códigos de acceso de estas secuencias adicionales.
1.9.1 Estudios empíricos demuestran que Muscle y otros programas producen mejores
alineamientos que Clustal:
Edgar, R.C. (2004) MUSCLE: multiple sequence alignment with high accuracy and high throughput
Nucleic Acids Res. 32(5):1792-1797.
Edgar, R.C. (2004) MUSCLE: a multiple sequence alignment method with reduced time and space
complexity BMC Bioinformatics, (5) 113.
Abra el bloc de notas (=notepad) y escriba la siguiente línea de comando:
muscle -in Tapirus_no_alineado.fas -out Tapirus_alineado_Muscle.txt -maxiters 15 -gapopen 10 -
gapextend 1 -cluster2 neighborjoining -maxtrees 15 -tree1 upgma1 -tree2 nj2
Guarde este archivo como:
Tapirus.bat
Para guardar en formato BAT debe seleccionar la opción todos los archivos:
En la carpeta donde fue instalado el programa Muscle, deben moverse todos los archivos:
Tapirus.bat y Tapirus_no_alineado.fas
Una vez realizado, proceda a hacer doble clic en el archivo BAT. Debería aparecer el archivo
Tapirus_alineado_Muscle.txt
Verifique que se encuentra en formato fasta. Importe este archivo en TNT (recuerde renombrar el
archivo de TXT a FAS) y realice una corrida, comparando los resultados (cladogramas) con el
alineamiento de Clustal.
Recommended