Workshop “Sequencing Data Visualization for SOLiD Users” México 2011

Muy rápido pasa el tiempo y bien dice la gente que recordar es vivir.

El pasado 4 de Julio asistí junto con el personal del área de genomica y estudiantes de doctorado al Workshop “Sequencing Data Visualization for SOLiD Users” el cual se llevo a cabo en las oficinas de Life Technologies de México.

 

Apenas llegue a mi habitación cuando ya estaba instalando algunos de los programas en mi computadora portátil y la mac.

llegamos algo cansados y teníamos hambre por lo que decidimos cenar y disfrutar de una muy buena platica con todos , después ya bien comiditos nos fuimos a instalar las computadoras con los programas necesarios para el Workshop, yo me desvele un poco más tiempo ya que una computadora estaba dando mucha guerra pero como dicen que no hay peor lucha que la que no se hace finalmente quedo lista.

Leonardo inicio con el Workshop hablando sobre los análisis de los datos de Bioinformática en general, muy buena platica.

El workshop estuvo bien , estuvimos usando varias herramientas para visualización de secuencias como Magic Viewer, ChipViewer , Tablet y BamViewer , está platica fue impartida por la gente de Winter Genomics, también ellos hablaron sobre Galaxy solo que por alguna extraña razón el sitio web oficial de Galaxy se bloqueo, lo bueno es que tenia configurado Galaxy en mi propia computadora portátil por lo que les pasamos la dirección de mi computadora para que todos pudieran entrar a Galaxy y seguir trabajando con el WorkShop.

Alrededor de las 2:15 salimos a comer , todos estuvimos invitados a comer por parte de  Life Technologies México , gracias.

Al termino de la comida regresamos a la siguiente parte del workshop, Leonardo realizo una demostración del nuevo software de análisis de datos de SOLiD “LifeScope”.

De imprevisto me anime a participar complementando un poco sobre Galaxy y BioScope, pero mi computadora portátil no pudo reconocer el proyector por lo que solo use la computadora de Leonardo para presentar algo rápido.

Comente brevemente 3 puntos:

    1. BioScope ahora puede ser capaz de correr en Ubuntu Linux Desktop y Servidor para ello hice algunos cambios en los scripts de instalación de BioScope.
    2. Es posible usar TMAP , la herramienta para mapear secuencias de Ion Torrent dentro Galaxy así como Velvet , Mira ..etc , para ello visita el siguiente enlace.
    3. Desarrolle un pequeño pipeline que permite generar las secuencias de referencia en el formato que Galaxy necesita para ser usadas dentro de Galaxy con Blast-MegaBlast , para descargar o verificar el software haz clic aquí.

Al termino hicieron la entrega de constancias de participación y nos despedimos , no sin antes tomar un par de fotos para el recuerdo.

Gracias todos por el Workshop , la asistencia y la convivencia muy agradable , espero que se vuelva a promover y organizar este tipo de eventos que nos permiten conocer y compartir la información que es provechosa para todos, desde luego cuenten con mi participación

Augustus Trainer

En meses pasados, al intentar usar el script “augustus-x.y.z/scripts/autoAugTrain.pl” para entrenar Augustus, y después de instalar correctamente las dependencias (yaml, blat,scipio..etc)  y ejecutar el script, solo resultaba en el mensaje:

Program aborted. Possibly “scipio” is not installed or not in your PATH at ./autoAugTrain.pl line 771

Después de hacer varias pruebas, mi teoría fue que el problema estaba en el script autoAugTrain.pl , así que revise un poco el fuente, añadí algunas funciones y elimine el problema de raíz.

1. Al descargar y descomprimir la ultima versión de scipio,tienes un script “scipio.1.4.pl” el cual si no editas su nombre del archivo como “scipio.pl”, de antemano el script “autoAugTrain.pl” no encontrara al script “scipio.pl”, lo mismo para los scripts “yaml2gff.1.4.pl” y “yaml2log.1.4.pl”, una solución rápida es crear un enlace simbólico o edita su nombre, así :

scipio.pl -> scipio.1.4.pl,

yaml2gff.pl -> yaml2gff.1.4.pl,

yaml2log.pl -> yaml2log.1.4.pl

2. De cualquier manera el paso 1 no me funciono y el resultado era el mismo error del programa.

3. Despues de revisar un ratito el código, y para no entrar en tanto detalle, el script “autoAugTrain.pl” llama a otros scripts (scipio, yaml2gff.pl, scipiogff2gff.pl, gff2gbSmallDNA.pl ) para cumplir con su función principal, el detalle está en como ejecuta la llamada.

Realmente no sería necesario que la función “system($miprograma)” sea igual a 0(cero) para decidir si el programa scipio se encuentra en el PATH del sistema, en consecuencia añadí un poquito de código para resolver el problema y ahora el programa-entrenador del predictor de Augustus le puedes decir donde se encuentra el programa/script “scipio.pl” antes de ejecutarlo y entonces puedes usar el programa scipio que tu le indiques desde linea de comandos, esto supone una ventaja puesto que puedes  usar diferentes versiones de “scipio”, veamos un ejemplo :

Ejemplo de como debes ejecutar el comando:

./autoAugTrain.pl  –genome=/home/jacob/Desktop/UtriculariaGenome/Training/pcap_results_ml500_1334seqs.fasta  –trainingset=/home/jacob/Desktop/UtriculariaGenome/Training/proteinsmodels_1415seqs.fasta  –species=sname5                   –scipio=/home/jacob/Programas/scipio14/scipio.pl

observa el nuevo parámetro “–scipio” y con un valor apuntando a la ruta absoluta donde se encuentra el script que vas a usar, aqui podrias usar cualquier versión de “scipio” y lo puedes aplicar para todos los scripts que vienen con scipio por ejemplo: “yaml2gff.1.4.pl

La salida que genera el script le hice algunos ajustes para mostrar en cual paso se encuentra tu proceso y no perder mucho tiempo pensando en que todo va de maravilla, cuando posiblemente algo ha pasado y no es el resultado que esperabas.

=====================================================

patch by Jacob, e-mail: jacobnix at gmail period com

Running Augustus Trainer using following parameters  =====================================================

directories ==> /home/jacob/Programas/testing/autoAugTrain/training/

genome ==> /home/jacob/Desktop/UtriculariaGenome/Training/pcap_results_ml500_1334seqs.fasta

trainingset ==>  /home/jacob/Desktop/UtriculariaGenome/Training/proteinsmodels_1415seqs.fasta

scipio ==> /home/jacob/Programas/scipio14/scipio.pl

Running and generating scipio YAML file….

===========================================

Convert scipio YAML file to scipio GFF file….

===============================================

Convert scipio GFF file to GFF file (extracting training genes)  =================================================

Finally convert to GenBank Format (output ==> training.gb file) =================================================

Por supuesto que en cada paso te indica si el proceso se ejecuto correctamente y puedes usar -v  -v  -v  (verbose) para incrementar más en cada paso los detalles de que está ocurriendo, el código fuente originalmente está escrito en Perl , en consecuencia codifique en Perl también.

Está solución es temporal puesto que considero que al compilar Augustus sería mejor si incluyo la búsqueda de yaml, blat, scipio, bioperl en automático, desde configure, y si configure tiene éxito y encuentra los programas o  scripts instalados en algún lugar del sistema solo seria cuestión de guardar el path hacia el script “scipio” y tener un cache de rutas absolutas por omisión, de está manera cualquier script que necesite de otros primera consultara el cache para saber donde se encuentran , si el usuario define en tiempo de ejecución sus propios scripts instalados en alguna otra parte es 100% viable !! puesto que los scripts les añadí de esta función.

Fixing Haskell Bioinformatic Library

Thanks Ketil

En días pasados arregle un problema con una librería escrita en Haskell para análisis bioinformatico y le sugerí al desarrollador ( Ketil ) sobre la solución y bueno..la tomo en cuenta y yo aprendí Haskell 😉

Blog original: http://blog.malde.org/index.php/the-haskell-bioinformatics-library/

Solución:

you will need to download and to install tagsoup 0.4

download from here:

http://hackage.haskell.org/package/tagsoup-0.4

then,  use following commands to install it :

runhaskell Setup configure
runhaskell Setup configure – -user
runhaskell Setup build
runhaskell Setup install

download bio-0.4 haskell source packages, then edit bio.cabal file like this:

Build-Depends: base>=3 && =1.2.0.0, binary, tagsoup= 0.9.1, containers, array,
parallel, parsec, random, old-time, mtl

QuickCheck to >=1.2 and tagsoup =1.2.0.0: using QuickCheck-2.1.0.3
Dependency tagsoup <=0.4: using tagsoup-0.4

ok, now install biohaskell lib using:

runhaskell Setup configure – -user
runhaskell Setup build

opps !!  you will see following error :

[18 of 43] Compiling Bio.Sequence.TwoBit ( Bio/Sequence/TwoBit.hs, dist/build/Bio/Sequence/TwoBit.o )

Bio/Sequence/TwoBit.hs:37:31:
Module `Test.QuickCheck’ does not export `check’

Fix ?, let’s do it,  open Bio/Sequence/TwoBit.hs haskell source file and locate line 37 with your vi or emacs editor

by default you will see:

import Test.QuickCheck hiding (check) — QC 1.0
– – import Test.QuickCheck hiding ((.&.)) — QC 2.0

please,  apply changes like :

– – import Test.QuickCheck hiding (check) — QC 1.0
import Test.QuickCheck hiding ((.&.)) — QC 2.0

this change is because I am using QuickCheck 2

ok, good , we are try to build once again :

runhaskell Setup build

opps error again :

[35 of 43] Compiling Bio.Util.TestBase ( Bio/Util/TestBase.hs, dist/build/Bio/Util/TestBase.o )

Bio/Util/TestBase.hs:81:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:85:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:90:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:98:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:105:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:109:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:117:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:125:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

Bio/Util/TestBase.hs:132:4:
`coarbitrary’ is not a (visible) method of class `Arbitrary’

you will need to edit bio.cabal, find Bio.Util.TestBase and delete it then save file.

runhaskell Setup install
Installing library in $HOME/.cabal/lib/bio-0.4/ghc-6.12.1
Registering bio-0.4…

ls $HOME/.cabal/lib/bio-0.4/ghc-6.12.1/
Bio HSbio-0.4.o libHSbio-0.4.a

ready, that’s all

ketil, what’s your opinion ?

developing on Bioscope 1.2

In past days I was developing some extra features for Applied Biosystems Bioscope 1.2 software tool. I think that bioscope is good tool but finally users needs to get access to more documentation like tutorials and books, so I added a menu and documentation dialog box(java rich faces) under bioscope’s help menu first.

I am writing two books: My Life with Bioscope and Bioscope for dummies, I am developing live screencasts too about how to analyze data using Bioscope 1.2 by command line and web user interface.

Screenshots:

Plans for books ? coming soon

BioHackaton 3

The 3rd DBCLS BioHackathon for interpreting biological knowledge with Semantic Web technologies will be held during 2010/2/ 8-12 in Japan.

Objectives

DBCLS is working on the integration of biological resources. To achieve this goal, we have been organizing BioHackathons since 2008 to survey existing efforts and develop integrated environments with open source software and public services. Themes of the hackathons evolved year by year, and we are continuously providing cutting edge developers with opportunities to gather for utilizing state of the art technologies to emerging demands in life sciences.

Facing to unprecedented amount and variety of biomedical data, it is required to consolidate related information and facilitate efficient interpretation of the accumulated biological knowledge. Therefore, we selected the Semantic Web as its main theme this year. Topics may include but not limited to:

  • Queries
    • Targeted queries to be resolved by the Semantic Web technologies.
  • Datasets
    • List currently available and/or still missing datasets (as Linked Data / RDF) to resolve the above queries.
  • Stores
    • Develop our own or survey existing extensible storage systems for RDF triples and functional query interfaces.
  • Tools
    • Develop common APIs among Open Bio* projects for RDF stores and SPARQL endpoints.
    • Develop a set of programs including loaders and converters for RDF data.
    • Develop supporting text mining systems and end-user applications.

About the Hackathon

The hackathon (hacking + marathon) basically is a camp where invited participants discuss current issues and implement software to solve them on site collaboratively. This kind of meeting is very effective for the intensive development of projects, because face-to-face meeting of the developers, who are usually scattered around the world, accelerates their communication and collaboration.

BioHackathon 2010 is sponsored by Database Center for Life Science ( DBCLS) and Computational Biology Research Center ( CBRC). DBCLS is a national center responsible for sustainable life science databases in Japan and CBRC is a national research organization for bioinformatics.

Developing Corona Matching Pipeline Sim

En mis tiempos de ocio he estado desarrollando un poco una versión lejana aún, pero parecida a Corona ya que lo necesito para probar otro proyecto, por el momento estoy trabajando en el Pipeline de “matching” que permite alinear lecturas de SOLiD(fragmentos o por pares) hacia un genoma de referencia, por lo que el parser del mapa de cromosomas esta terminado y efectivamente cumple su objetivo, básicamente en el primer Pipeline esta completo los siguientes puntos:

  • parámetros requeridos completos y por el momento  solo -z(hits) , –tempdir (scratch) son viables.
  • parser para el mapa de cromosomas esta completo, identifica los cromosomas y genera los directorios correctos.
  • genera los scripts necesarios para proceso en cluster al igual que Corona(torque pbs)

La forma de llamar el primer Pipeline es:

jacob@jacob-mobile:~/Projects/ABCoronaLiteEmu/build$ mono matching_large_genomes_cmap_save_script.exe -csfasta /home/jacob/tmp/SOLiD/results/lpi/R3/file.csfasta -dir /home/jacob/tmp/SOLiD/results/lpi/matchingR3 -cmap /home/jacob/tmp/SOLiD/ref/human_validated.cmap -t 25 -e 4 -z 10 -tempdir /home/jacob/tmp

más delante comentare sobre los avances de cada Pipeline y las herramientas independientes.

Uso de memória pelo Velvet

En días pasados dejamos disponible Leonardo y un servidor una aplicación web sencilla para calcular la memoria necesaria de la computadora en el momento que vayamos a ejecutar Velvet para ensamblar un genoma a partir de lecturas pequeñas.es un factor  muy importante que hay que tomar en cuenta antes de trabajar.

Liga: http://denovoutils.appspot.com/velvetmem

copy-paste:

O fator limitante para a execução do Velvet é a quantidade de memória disponível no computador. Segundo essa
thread
no fórum SEQAnswers forum a fórmula para calcular o uso da memória em kb é:

Ram required for velvetg = -109635 + 18977*ReadSize
    + 86326*GenomeSize + 233353*NumReads - 51092*K

Onde:

  • ReadSize está em bases
  • GenomeSize está em megabases
  • NumReads está em milhões de reads
  • E k é o tamanho do k-tamero utilizado pelo Velvet

Copyright Leonardo

México aporta el Genoma del Maíz al conocimiento científico mundial

“México aporta el Genoma del Maíz al conocimiento científico mundial”

Con la reciente publicación del articulo http://www.sciencemag.org/cgi/content/abstract/sci;326/5956/1078
en la revista Science, hace un par de semanas recibí un reconocimiento por mi participación en el proyecto, mi participación fue muy muy pequeña ya que solo desarrolle un pequeño browser web que permite visualizar los datos, a la medida y necesidades, que previamente se estaban analizando, este pequeño browser lo denominamos Query Sequence Visualizer , el cual permanece en una fase de pruebas o mejor dicho una versión beta.

La aplicación esta desarrollada con el framework de Mono, básicamente usa un conjunto muy rico de diversas tecnologías para lograr su cometido.

Básicamente es el nacimiento de la aplicación ya que hay muchas características y planes que implementare en la aplicación.

Sin lugar a dudas agradezco a toda la gente que me tuvo la paciencia y me oriento en el desarrollo de la aplicación. es un orgullo haber participado un poquito en el proyecto.

Más información sobre Query Sequence Visualizer http://hackob.openenchilada.com/projects/soft/bio/qsv/indexQsv.html

Referencias en internet sobre el articulo del Genoma de Maiz:

http://www.ecuadorciencia.org/noticias.asp?id=8288&fc=20091122

http://sapiensideas.com/noticias/saberes/develan-genoma-del-maiz/

http://www.research.gov/rgov/anonymous.portal?_nfpb=true&_windowLabel=news_1_1&news_1_1_actionOverride=%2Fgov%2Fresearch%2Fcore%2Fcms%2Fnews%2Fbegin&news_1_1nodePath=%2FBEA+Repository%2Fnews%2Fitems%2F1259150937594&_pageLabel=page_latest_news

SOLiD: Platica análisis de datos en Inmegen

La semana pasada asistí al curso del instrumento de secuenciación por ligación “SOLiD 3 Plus” impartido por Applied Biosystems, el curso se llevo a cabo en el Instituto Nacional de Medicina Genomica. El viernes colabore un poco impartiendo una platica introductoria sobre el análisis de los datos via offline y los formatos de las lecturas de SOLiD.

Fue un enorme gusto y placer el colaborar con Applied Biosystems y el Inmegen en esta pequeña platica que impartí.