Búsqueda en parsimonia, consenso estricto y cálculo de IC...

5
Búsqueda en parsimonia, consenso estricto y cálculo de IC e IR en TNT utilizando script basado en lenguaje macro Orlando Fuentes cód. 1993544 Introducción El manejo de scripts permite la automatización de procesos que extiende las capacidades del programa (Goloboff et al., 2008). El lenguaje macro, poco utilizado por los usuarios de TNT, permite manipular variables internas del programa y hacer cosas que normalmente no hace. Es así como el comando “macro=;” controla ajustes básicos del lenguaje macro, como RAM total utilizada, número de variables y número de loops o ciclos. De este modo, provee capacidad computacional efectiva en el manejo de grandes sets de datos. El objetivo principal de esta revisión es el de aplicar el lenguaje macro en una búsqueda sencilla basada en parsimonia, consenso de Nelsen y cálculo de IC e IR utilizando caracteres moleculares. Metodología Los datos moleculares fueron extraídos del trabajo en ranas realizado por Che et al., (2007) basado en secuencias nucleares y mitocondriales. Se utilizaron las secuencias mitocondriales del gen 16s para siete taxa: Fejervarya cancrivora, Hoplobatrachus rugulosa, Fejervarya limnocharis, Limnonectes fujianensis, Limnonectes kuhlii, Limnonectes fragilis y Occidozyga martensii. Las secuencias fueron alineadas en el programa CLUSTAL ver. 2.0.11 liberado por Larkin et al. (2007, actualización 2009). A continuación se procedió a una lectura extensiva de los manuales de TNT (Goloboff et al., 2007) y revisión de documentación disponible online respecto al manejo de macros. Finalmente se realizó un script basado en el comando macro=;” que permitió la realización de una búsqueda bajo el criterio de parsimonia (it=100 hold=10) de caracteres moleculares, con consenso de Nelsen, así como el cálculo de Índices de Retensión y Consistencia para los árboles obtenidos. Resultados El comando “macro=;” activa el lenguaje dentro del programa, y su forma de desactivarlo es macro-;”. Posterior a este se exponen las variables a manejar con el comando “var=”, que usa números internos (que el programa identificará) o expresiones (es decir, enunciando directamente los nombres), mediante “var:”. Luego se asigna valor a las variables mediante el comando “set”, seguido del nombre de la variable y su valor. Para el script que construí esta sería la secuencia de mandos:

Transcript of Búsqueda en parsimonia, consenso estricto y cálculo de IC...

Page 1: Búsqueda en parsimonia, consenso estricto y cálculo de IC ...tux.uis.edu.co/labsist/docencia/informes/20070-2009-i/informe... · utilizando script basado en lenguaje macro ... Los

Búsqueda en parsimonia, consenso estricto y cálculo de IC e IR en TNT

utilizando script basado en lenguaje macro

Orlando Fuentes cód. 1993544

Introducción

El manejo de scripts permite la automatización de procesos que extiende las capacidades del

programa (Goloboff et al., 2008). El lenguaje macro, poco utilizado por los usuarios de TNT,

permite manipular variables internas del programa y hacer cosas que normalmente no hace. Es

así como el comando “macro=;” controla ajustes básicos del lenguaje macro, como RAM total

utilizada, número de variables y número de loops o ciclos. De este modo, provee capacidad

computacional efectiva en el manejo de grandes sets de datos. El objetivo principal de esta

revisión es el de aplicar el lenguaje macro en una búsqueda sencilla basada en parsimonia,

consenso de Nelsen y cálculo de IC e IR utilizando caracteres moleculares.

Metodología

Los datos moleculares fueron extraídos del trabajo en ranas realizado por Che et al., (2007)

basado en secuencias nucleares y mitocondriales. Se utilizaron las secuencias mitocondriales

del gen 16s para siete taxa: Fejervarya cancrivora, Hoplobatrachus rugulosa, Fejervarya

limnocharis, Limnonectes fujianensis, Limnonectes kuhlii, Limnonectes fragilis y Occidozyga

martensii. Las secuencias fueron alineadas en el programa CLUSTAL ver. 2.0.11 liberado por

Larkin et al. (2007, actualización 2009). A continuación se procedió a una lectura extensiva de

los manuales de TNT (Goloboff et al., 2007) y revisión de documentación disponible online

respecto al manejo de macros. Finalmente se realizó un script basado en el comando

“macro=;” que permitió la realización de una búsqueda bajo el criterio de parsimonia (it=100

hold=10) de caracteres moleculares, con consenso de Nelsen, así como el cálculo de Índices

de Retensión y Consistencia para los árboles obtenidos.

Resultados

El comando “macro=;” activa el lenguaje dentro del programa, y su forma de desactivarlo es

“macro-;”. Posterior a este se exponen las variables a manejar con el comando “var=”, que

usa números internos (que el programa identificará) o expresiones (es decir, enunciando

directamente los nombres), mediante “var:”. Luego se asigna valor a las variables mediante el

comando “set”, seguido del nombre de la variable y su valor. Para el script que construí esta

sería la secuencia de mandos:

Page 2: Búsqueda en parsimonia, consenso estricto y cálculo de IC ...tux.uis.edu.co/labsist/docencia/informes/20070-2009-i/informe... · utilizando script basado en lenguaje macro ... Los

macro=;

var:

numIts

numTrees

itTrees;

set numIts 100;

set itTrees 10;

set numTrees 'numIts' * 'itTrees';

Paso siguiente se añadieron los comandos regulares del programa “hold” y “mult” para iniciar

la búsqueda.

hold 'numTrees';

mult = replic 'numIts' hold 'itTrees';

El consenso estricto se realizó mediante el comando “nel *;”. Y a continuación se añadió

“tsave 16s.tre;” “save;” y “tsave/;” para salvar los árboles obtenidos.

Al buscar la forma de calcular IC e IR se encontró que la instalación del programa provee

ejemplos de macros en el archivo “tnt_scripts.rar” por lo cual se utilizó el macro “stats.run”

para este fin; simplemente añadiendo “stats;” en el script. Así mismo se puede hallar soporte

de bremmer, optimización de Sankoff y demás mediante la manipulación de estos macros.

La secuencia completa de las instrucciones se observa en la figura 1.

Se obtuvo dos árboles de longitud 309, cuyo consenso se observa en la figura 2, y en la figura

3 se halla el cuadro obtenido de los cálculos de IC e IR.

Otros comandos.

Loop. Es usado para ejecutar acciones repetitivas o en ciclos y su forma general es usada

así:

loop =name X+Y Z

actions, decisions ... stop

Donde name representa el nombre que se pone al loop y X, Y, Z son números de las variables,

aunque también se puede utilizar los nombres directamente. Es así como loop permite llevar a

cabo varias acciones y acceder a variables en otros archivos.

Page 3: Búsqueda en parsimonia, consenso estricto y cálculo de IC ...tux.uis.edu.co/labsist/docencia/informes/20070-2009-i/informe... · utilizando script basado en lenguaje macro ... Los

If, else y end. Usados en decisiones lógicas.

if ( condition )

action(s) A ;

else

action(s) B ;

end

Donde si la condición es válida, se ejecuta la acción A, ó de lo contrario, se llevará a cabo la

acción B, que puede ser omitida y donde A y B pueden ser comandos regulares de TNT. Cada if debe ser seguida de else ó end.

Conclusiones y recomendaciones

Los principales comandos en el manejo de un script basado en lenguaje macro son “macro=;”

“var=” y “set”, donde se pueden especificar las diferentes variables internas del programa que

no son accesibles desde las acciones regulares de TNT.

La ejecución automática de macros resulta sencilla desde un script añadiendo simplemente el

nombre del macro previamente guardado bajo la extensión “.run” sin olvidar ubicarlo en la

misma dirección del script y el programa.

TNT provee muchas posibilidades respecto al manejo del lenguaje macro incrementando el

poder computacional de las máquinas comunes a la vez que reduce el tiempo de

procesamiento en cuanto a grandes sets de datos se refiere.

La corrida realizada en esta revisión pudo haber sido hecha por medio de los comandos

normales de TNT; sin embargo se utilizó el script basado en lenguaje macro con el fin de

demostrar que resulta una herramienta versátil y fácilmente manejable aún para usuarios no

programadores.

Page 4: Búsqueda en parsimonia, consenso estricto y cálculo de IC ...tux.uis.edu.co/labsist/docencia/informes/20070-2009-i/informe... · utilizando script basado en lenguaje macro ... Los

Referencias

Arias, J.S. & Miranda-Esquivel, D.R. 2006. A sensitivity analysis for choosing reliability functions

to select cladograms. Zoologica scripta.

Che, J., Pang, J., Zhao, H., Wu, G., Zhao, E. & Zhang, Y. 2007. Molecular phylogeny of the

Chinese ranids inferred from nuclear and mitochondrial DNA sequences. Biochemical

Systematics and Ecology, 35: 29-39.

Goloboff, P.A., Farris, J.S., Nixon, K.C. 2007. T.N.T. Tree analysis using new technology.

Programa y documentación disponible en: http://www.zmuc.dk/public/phylogeny/TNT/

Goloboff, P.A., Farris, J.S., Nixon, K.C. 2008. TNT, a free program for phylogenetic analysis.

Cladistics, 24: 1-13.

Larkin, M.A., Blackshields, G. Brown, N.P., Chenna, R., McGettigan, P.A., McWilliam, H.,

Valentin, F., Wallace, I.M., Wilm, A., Lopez, R., Thompson, J.D., Gibson, T.J. & Higgins, D.G.

2007. Clustal W and Clustal X version 2.0. Bioinformatics, 23(21): 2947-2948.

Yang, Z. 2006. Computational Molecular Evolution. First edition. Oxford University Press.

Disponible en:

http://books.google.com.co/books?id=K5sBXe1qPt8C&printsec=frontcover#v=onepage&q=&f=f

alse . Fecha de consulta: 17-09-2009.

Wiki de TNT - Tree analysis using New Technology. Disponible en: http://tnt.insectmuseum.org/index.php/Main_Page

Page 5: Búsqueda en parsimonia, consenso estricto y cálculo de IC ...tux.uis.edu.co/labsist/docencia/informes/20070-2009-i/informe... · utilizando script basado en lenguaje macro ... Los

Anexos

Figura 1. Secuencia de

instrucciones.

Figura 2. Reconstrucción

obtenida a partir de gen mit 16s.

Figura 3. Índices de Consistencia y Retensión

para los árboles obtenidos.