27 de diciembre de 2017

más one-liners Perl

Hola,
antes de que se acabe el año aprovecho para compartir con vosotros un excelente tutorial de one-liners de Perl, esos comandos que en una línea permiten ejecutar complejas operaciones en el terminal de Linux, el símbolo del sistema de Windows, o, mejor aún, desde dentro de una ventana de MobaXterm.
El tutorial se aloja e:

https://github.com/learnbyexample/Command-line-text-processing/blob/master/perl_the_swiss_knife.md

y tiene ejemplos tan útiles como:

# 1) calcula máximo de una lista de números separados por comas
$ echo '34,17,6' | perl -MList::Util=max -F, -lane 'print max @F'
34

# 2) valida y expande un one-liner a un programa completo más comprensible
$perl -MO=Deparse -ne 'if(!$#ARGV){$h{$_}=1; next} print if $h{$_}'
LINE: while (defined($_ = )) {
    unless ($#ARGV) {
        $h{$_} = 1;
        next;
    }
    print $_ if $h{$_};
}
-e syntax OK

El tutorial tiene también recetas para usar el resto de herramientas del terminal Linux, como grep, sed y muchas otras, en

https://github.com/learnbyexample/Command-line-text-processing

Feliz año!
Bruno

12 de diciembre de 2017

Secuencia de referencia para experimento TagSeq

Hola,
cada vez se van publicando más trabajos donde se emplea TagSeq, una versión low cost de RNAseq que se especializa en secuenciar el máximo número de transcritos posibles, pero sólo unos cuantos cientos de bases de su extremo 3', contando desde la cola poliA. Un tamaño típico de librería TagSeq es 500b.

Protocolo TagSeq, tomado de https://tinyurl.com/y9yc4u5a.

Cuando obtenemos lecturas o reads de este tipo y las queremos alinear contra los transcritos anotados del genoma de referencia puede ser útil, con vistas a posibles normalizaciones posteriores que consideren la longitud original del gen, recortar las secuencias de referencia. Os pongo un ejemplo en Perl:

zcat primaryTranscriptOnly.fa.gz | \
     perl -lne 'if(/^(>.*)/){$h=$1}else{$fa{$h} .= $_} END{ foreach $s (sort keys(%fa)){ print "$s\n".substr($fa{$s},-500)."\n" }}' > \     
     primaryTranscriptOnly.TagSeq500b.fa

Hasta luego,
Bruno


1 de diciembre de 2017

Docker image of GET_HOMOLOGUES + GET_PHYLOMARKERS

Dear all,
Pablo Vinuesa and me we have recently built a Docker image of GET_HOMOLOGUES bundled with a new pipeline, meant to be used downstream, called GET_PHYLOMARKERS. This software will be described in detail in a forthcoming publication. The image, and instructions on how to run it, are available at https://hub.docker.com/r/csicunam/get_homologues :



By packing them in a ready-to-use, cross-platform image, users avoid installation glitches, usually related to several extremely useful R packages required by the second pipeline. Please test it and give us feedback if possible,
cheers,
Bruno and Pablo

Note: link to docker hub updated 29Dic2017