Entradas Etiquetadas con: ‘R

22
oct
11

Ejecutando código R con Sweave en LyX 2.0


El progreso de LyX es imparable. Una de las novedades que trae la nueva versión 2.0 de es el soporte integrado de Sweave para ejecutar código R. Para versiones 1.6 o inferiores, así era la configuración. Sin embargo, ahora se ha facilitado mucho el procedimiento.

Si tenemos instalado R, abrimos LyX 2.0 y nos vamos a Documento >> Configuración >> Módulos >> Disponibles y añadimos el módulo “Sweave”. Aceptamos y en el menú de entornos tenemos al final uno denominado “Trozo” englobado en el tipo Sweave. Bajo este entorno escribiremos el código R/Sweave deseado y al compilarlo se insertará en nuestra salida PDF.

¿Ya está? Pues no os dije que era más fácil. Aquí dejo un ejemplo en formato LyX 2.0 (debéis cambiar la extensión de odt a lyx) y en PDF.

 

 

04
jul
11

[Bioinformática] PEGAS: Paquete para Análisis Evolutivos y de Poblaciones con R


Ya sabemos hacer filogenias con R. Ahora os voy a mostrar a realizar algunos análisis de genética de poblaciones y evolución con el paquete PEGAS.

El primer paso es instalar el paquete PEGAS. Abrimos R y escribimos:

> install.packages(pegas)

Seguidamente cargamos el paquete y, como en el anterior manual, introducimos un alineamiento en formato Phylip:

> library(pegas)
> data <- read.dna("alignment_contig_phy.txt")

Ya podemos empezar los análisis. Estimamos los haplotipos del alineamiento y sacamos una red de haplotipos:

> haplotipos <- haplotype(data)
> red <- haploNet(haplotipos)
> plot(red, size = attr(red, "freq"), fast = TRUE) 

A partir del alineamiento podemos estimar parámetros como la diversidad nucleotídica o el test de neutralidad D de Tajima:

> nuc.div(data)
> tajima.test(data) 

Y esto es solo una parte, para aquellos que estén interesados en realizar otro tipo de análisis con este paquete como AMOVA, acudid al manual de PEGAS.

19
feb
11

Integrar Meld en Gedit: Comparación rápida de ficheros


Fuente: MuyLinux

Meld es y buscar diferencias entre dos versiones distintas del mismo archivo, pero solo se puede usar para eso y no es especialmente válido para la programación directa. Por otro lado, gedit es un gran editor de textos que también sirve para programar pero no dispone de la capacidad de comparar ficheros, así que… ¿Por qué no unirlos a los dos?

Es lo que nos cuentan en WebUpd8, donde indican una sencilla forma de integrar Meld en gedit aunque de una forma no exactamente directa: no lograremos contar con una funcionalidad directa de comparación en gedit, sino que podremos comparar el fichero que estamos viendo en gedit con otro fichero que se abrirá en Meld.

Para lograr este propósito tendremos que tener instalados tanto Meld como Zenity:

sudo apt-get install meld zenity

En gedit tendremos que ir a Editar -> Preferencias y en la pestaña de plugins tendremos que habilitar el plugin de las “External tools” (“Herramientas externas”). Allí tendremos que pinchar en “Configure Plugin” (“Configurar Plugin”), añadir una nueva herramienta externa (con el botón “+”), darle un nombre cualquiera (por ejemplo, “Comparar con Meld”), y si queremos establecer un atajo de teclado. Por último, antes de acabar, queda por escribir lo siguiente bajo el campo “Edit“:

#!/bin/sh
meld $GEDIT_CURRENT_DOCUMENT_DIR/$GEDIT_CURRENT_DOCUMENT_NAME `zenity --file-selection --title="File for comparsion" --filename=/home/` &

De ese modo cuando presionemos el atajo de teclado establecido por nosotros o vayamos a Herramientas -> Herramientas externas -> Comparar con Meld se abrirá una ventana de Zenity pidiéndonos el fichero que queremos comparar con el que estamos viendo en gedit.

01
feb
11

rpy2: Ejecutando R desde Python


En el post anterior expliqué cómo realizar filogenias con el paquete R. Pero no me bastaba con aprender esto, sino que quería integrar órdenes de  R en un script en Python, del mismo modo que se puede integrar R con LaTeX gracias a Sweave. Y claro que se puede, con rpy2, un proyecto que nos proporciona una sintaxis para trabajar con R desde Python.

Es un proyecto que se encuentra en una fase de rápido desarrollo y que conviene tener la última versión, pues hay notables mejoras. Por eso en lugar de instalar desde repositorios el paquete “python-rpy2″, recomiendo hacerlo por un precompilado deb desde launchpad. Yo me he instalado la versión de Maveric en Lucid y no he notado ningún problema.

Una vez salvado este punto, pasamos a la acción. Ejecutamos el interprete Python y cargamos rpy2:

>>> import rpy2.robjects as robjects

A continuación parte del código utilizado en el post anterior con objeto de dibujar un árbol filogenético:

>>> robjects.r.library("ape")
>>> robjects.r.library("phangorn")
>>> robjects.r.library("multicore")

>>> data = robjects.r["read.dna"]("alignment_contig_phy.txt")
>>> data = robjects.r["as.phyDat"](data)
>>> data = robjects.r["as.DNAbin"](data)

>>> print(data)

>>> dm = robjects.r["dist.dna"](data, model = "JC69")
>>> treeUPGMA = robjects.r["upgma"](dm)
>>> viewUPGMA = robjects.r["plot"](treeUPGMA)

Y se nos abrirá la ventana con nuestro árbol. Nota que la sintáxis es sencilla. El nombre de la función R entre corchetes y comiilas seguido de los datos a los que se aplican entre paréntesis. Esto, precedido de “robjects.r”, la función de rpy2 que hace las llamadas a R. Esto es todo por el momento, más información en la documentación de la librería.

Así de fácil, así de R, así de Python.

31
ene
11

[Bioinformática] Introducción a las Filogenias con el paquete R


Llevo un tiempecillo haciendo mis primeros pinitos con R. ¡Por fin! No sé si han sido 2 los años que llevo queriendo aprender y no ha sido hasta hace poco tiempo cuando ha llegado la hora (aprovecho la ocasión para recomendar la superguía The R book). Y una de las primeras cosillas que he hecho han sido filogenias. A través del libro “Analysis of Phylogenetics and Evolution with R ” he aprendido mucho sobre análisis filogenético, más allá de su realización mediante el paquete R, recomendadísimo por tanto. Este es un brevísimo tutorial para estimar árboles filogenéticos. Dedicado a Copepodo, espero que te sirva.

Una vez tenemos instalado R, lo ejecutamos desde consola escribiendo:

$ R

Seguidamente debemos de instalar los paquetes necesarios:

> install.packages(ape)
> install.packages(phangorn)
> install.packages(multicore)

y cargarlos:

> library(ape)
> library(phangorn)
> library(multicore)

Ahora cargamos nuestra secuencia en formato phylip y la convertimos a un formato idóneo para que R pueda trabajar con ella.

> data <- read.dna("alignment_contig_phy.txt")
> data <- as.phyDat(data)

Creamos matriz de distancias, escogiendo el modelo de Jukes & Cantor:

> dm <- dist.dna(as.DNAbin(data), model = "JC69")

Realizamos el análisis filogenético por un método de distancias.

> treeUPGMA <- upgma(dm)
> treeNJ <- nj(dm)
> treeFME = fastme.bal(dm)

Y dibujamos los árboles:


> par(mfrow = c(2, 2), mar = c(2, 2, 4,2))
> plot(treeUPGMA)
> title("UPGMA")
> plot(treeUPGMA, type = "fan")
> title("UPGMA (fan)")
> plot(treeNJ, type = "unrooted", main = "NJ")
> title("NJ")
> plot(treeFME, type = "unrooted", main = "fastME")
> title("fastME")

¡Ya tenemos nuestros arbolitos!

Otro truco es exportar nuestros árboles a un fichero que se guarde en nuestro disco duro. Para ello, tipeamos:

> png()
> plot(treeUPGMA, type = "unrooted")
> dev.off()

Así de fácil.

También soporta análisis por Máxima verosimilitud, Máxima Parsimonia, Bootstrapping, modelTest,… y muchas más funciones. Pero eso ya será otro día. Si la impresión es superior a tu paciencia, puedes empezar a explorar el manual de los paquetes ape y phangorn.

13
nov
09

Instalar Swave en Windows: LyX como editor estadístico basado en R


Esta es la primera colaboración activa al manual LyX con “L” de LaTeX. Y el valiente es Jesús David Mosquera.

Nos trae un manual para instalar Sweave en Windows para integrar LaTeX con el lenguaje estadístico R. Es análogo al que ya podeís encontrar en el manual LyX en su versión Linuxera.

Nada más, desde aquí agradecer esta participación que, en la próxima versión del manual estará incluida.

——————————————————————

En primer lugar hay que descargar este archivo zip (cambiar extensión de odt a zip para poder descomprimirlo).

Supongamos que LyX y R se instalaron en “C:\Program Files\LyX X.X.X\” y “C:\Program Files\R\R-X.X.X\ respectivamente”.

Nota: Las leyendas “X.X.X” significan las versiones de LyX y R que usted instaló en su equipo.

A modo de ayuda pongo las rutas al directorio donde se instalaron en mi PC los programas Lyx y R para el momento cuando escribía esta guía.

- Para el LyX: “C:\Program Files\LyX 1.6.4\”
- para el R:   “C:\Program Files\R\R-2.9.1\”

1. Copiar los archivo con nombres “MakeSweave” y “Rweave” en la carpeta “C:\Program Files\LyX X.X.X\bin\”

Nota: El archivo “Rweave” contiene una linea donde se especifica la dirección en que se encuentran los archivo “Rterm” y “MakeSweave”, para modificarestas rutas de clic derecho sobre el archivo y luego clic en editar (por defecto se abre con el bloc de notas), lo único que hay que modificar es la version de R o LyX (en caso de que sea necesario). Por favor tenga mucho cuidado al especificar el lugar (ruta o directorio) correcto donde se encuentran estos dos archvios, de lo contrario tendrá problemas a la hora de compilar sus documentos.

2. Tome el archivo “noweb” y pegue una copia de éste en la siguiente dirección: “C:\Program Files\R\R-X.X.X\share\texmf”, ahora tome el mismo archivo “noweb” y ponga una copia de éste en la dirección que se indica a continuación: “C:\Program Files\MiKTeX 2.7\tex\latex\noweb\” (Nota: si la carpeta noweb no existe, debe crearla), ahora tome el archivo “Sweave” y ponga una copia en “C:\Program Files\MiKTeX 2.7\tex\latex\sweave\” (Nota: si la carpeta sweave no existe, debe crearla).

Luego vaya a Inicio > Todos los programas > MiKTeX 2.7 > Settings, en la ventana que se abre de click en la pestaña “General”, despues click en “Refresh FBDB”, luego click en “Update Formats” y por último en Aceptar.

3. Tome el archivo “literate-beamer” y ponga una copia de éste en “C:\Program Files\LyX X.X.X\Resources\layouts”.

4. Ahora debe Reconfigurar LyX, mediante Herramientas > Reconfigurar, despues que haya terminado la reconfiguración reinicie LyX. Abra un documento en blanco y luego vaya a Documentos > Configuración y en la lista desplegable de clase del documento mire si dispone de las clases de documento

- “article(Noweb)”
- “book(Noweb)”
- “report(Noweb)” y
- “presentation(beamer + Noweb + Sweave)”.

Si no dispone de estos documentos entonces debe reinstalar LyX y realizar los anteriores pasos nuevamente.

5. Ahora vaya a Herramientas > Preferencias y de click en Formatos externos y luego en convertidores. luego en la lista desplegable que esta abajo de “Del formato:” busque la opción “Noweb” y en la lista desplegable que esta abajo de “Al formato:” busque la opción “PDF (pdflatex)”, en la casilla correspondiente a “Convertidor” escriba la siguiente linea “Rweave $$i” (sin las comillas) y de click en añadir y seguidamente en Guardar.

6. Por último intente obtener alguna salida en formato PDF Probando alguno de los archivos con nombre “Gamma-02″, “Normal-01″, “sweavelyx” ó
“Beamer+Sweave”.

Esta pequeña guía fue posible gracias a un tutorial del señor Murat Yildizoglu.

Frase del día: “Siempre es un placer poder ayudar a los que quieren aprender” – Francesc Carmona.

Hasta Pronto…. y saludos desde Medellín – Colombia

07
mar
09

Utilizar Sweave con la clase Beamer en LyX


LaTeX es mucho más que un lenguaje para procesar textos, yo llevamos viendo desde hace mucho tiempo. Acerca de una fantástica prueba de ello ya hemos tratado: la integración con el lenguaje estadístico R gracias a Sweave. Sin embargo, no existe ninguna plantilla funcional para poder usar Sweave con la clase para presentaciones Beamer. Existe una solución, aviso que tiene alguna pega, pero que funciona totalmente bien. Gregor Gorjanc, ha realizado un sencillo manual para ayudarnos a conseguirlo. Consiste en crear con archivo con extensión *.layout y con cualquier nombre, por ejemplo, Beamer-Sweave.layout. El contenido que tiene que llevar es:

#% Do not delete the line below; configure depends on this
#  DeclareLaTeXClass[beamer, Sweave.sty]{beamer (beamer Sweave noweb)}
#
# This is a copy of literate-article.layout from LyX, but changed for
# Sweave - NoWeb syntax:
#  - changed noweb.sty to Sweave.sty
#  - moved preamble to literate-scrap.inc

Format 2
Input beamer.layout
Input literate-scrap.inc

Guardamos el fichero creado en la carpeta ~/.lyx/layouts de nuestro home (recuerda que es un fichero oculto), y reconfiguramos LyX. Ahora debería de funcionar, debes de tener una clase de documento beamer (beamer Sweave noweb). Si no lo consigues, pásate por el blog de Duncan Golicher, un bloguero que está haciendo un tutorial para R. Aquí te puedes descargar una versión de su carpeta ~/.lyx. Cambia el nombre de tu carpeta actual, y pega la que te has descargado para después reconfigurar. Para comprobar si la instalación ha tenido éxito, aquí te dejo un archivo lyx y el pdf (descárgalo y cambia la extensión a *.zip):

[Descargar plantilla Beamer-Sweave y pdf]

Dos son los problemas más evidentes que tiene esta plantilla, y son la imposibilidad de utilizar los entornos de Titulación y la de escalar los archivos de imagen (ni con nuestro editor favorito, yo uso The Gimp). Además, existe otra plantilla diferente que podéis encontrar en este foro, aunque no he conseguido que me funcione. Menos da una piedra y el resultado es muy bueno. Hasta la vista.

11
dic
08

Instalar y Usar Sweave: LyX (LaTeX) como editor estadístico basado en R


[Recomiendo la lectura de este artículo a Jose (para que Olga presente una elegante tesis) y a Eli (para que se instale LyX --en Ubuntu, claro-- de una vez por todas).]

El post de ayer no fue una casualidad. Hace unos días, Ángel me preguntó si sabía algo de R. Yo respondí que lo conocía, pero que aún no me había metido aprenderlo. Al día siguiente, me enseñó unas gráficas que había hecho con R integrado con LaTeX. Lo hizo usando un fichero *.Rnw, escrito en lenguaje LaTeX y R, que (haciendo: R CMD Sweave archivo.Rnw && latex archivo.tex) generaba un archivo *.tex con el texto y otros con la gráfica generada.

Muy entusiasmado me dispuse a probar Sweave, esa maravillosa y libre funció que me permite utilizar estadística en el programa con el que tengo más empatía: LyX. Esto es lo que he aprendido desde entonces:

Instalación

1. Instalar R. [Ver Bioinformatiquillo]

2. Instalar las plantillas. Descargamos los archivos que hay aquí (nos olvidamos de la carpeta). Copiamos los archivos “literate-*.*” y en nuestra carpeta de usuario (~/.lyx) o en la carpeta de librerías (/usr/share/lyx), dentro del directorio “layouts” (si no son estas, búscalas en Lyx: Ayuda —> Acerca).

3. Modificar el archivo “preferences”. Abrimos el archivo “preferences” que antes descargamos y copiamos el contenido a continuación del que está en nuestra carpeta de usuario (los más precavidos pueden hacer una copia de seguridad antes).

4. Reconfigurar LyX. Abrimos LyX y le damos a Herramientas —> Reconfigurar. Tras lo cual, reiniciamos el programa y listo.

Utilización.

1. Seleccionamos una de las plantillas que acabamos de instalar: article , book o report (Sweave noweb).

2. Introducimos código R. Del mismo modo con el que introducimos código LaTeX (ERT), metemos nuestro código R. Yo he usado este:

<<fig=T,echo=T,height=4>>
asequence<- seq(from=0,to=5,by=0.1)
expnegx2 <- exp(-asequence^2)
plot(asequence,expnegx2,type="l",ylab=expression(exp(-z^2)),xlab="z")
@

3. Compilamos. Ver —> PDF

** Atención: con estas plantillas, he tenido problemas al compilar con las tildes en la codificación “latin 1″, pero lo solucioné escogiendo “utf8″.

4. Admiramos y reflexionamos. ¡Me encanta LyX! Esto no se pudiera haber realizado si R y LaTeX/LyX fueran proyectos privativos.

[Descargar pdf]

[Descargar lyx] (cambiar extensión a *.lyx)

Ahora, sí que sí, no tengo excusa para no aprender R.

ACTUALIZACIÓN (22/02/2009): Al actualizar a la nueva versión de LyX, no me funcionaba, tras indagar un poco, comprobé que el archivo ‘preferences’ había cambiado. La solución es volver a copiar las líneas que insertemos, reconfiguramos y solucionado.

———————————————————-

Más información: Wiki LyX; RNews: “Using Sweave with LyX” (pdf).

10
dic
08

Instalación, Tutoriales y Utilización de R: El lenguaje libre de análisis estadístico


Según WikipediaR “es un lenguaje y entorno de programación para análisis estadístico y gráfico. Se trata de un proyecto de software libre, resultado de la implementación GNU del premiado lenguaje S. R y S-Plus -versión comercial de S- son, probablemente, los dos lenguajes más utilizados en investigación por la comunidad estadística, siendo además muy populares en el campo de la investigación biomédica, la bioinformática y las matemáticas financieras. A esto contribuye la posibilidad de cargar diferentes librerías o paquetes con finalidades específicas de cálculo o gráfico.”

Instalación

Está en repositorios, por lo que con un simple apt-get estará instalado:

$ sudo apt-get install r-base r-recommended

Tutoriales

Una vez hecho esto, ya podemos comenzar a trastear, pero resulta un tanto complicado si, como yo, no tenéis ni idea del lenguaje. Así, aprovechando de la gran cantidad de documentación que suelen tener los proyectos de software libre, os recomiendo unos cuantos manuales que he encontrado googleando.

Getting Started With the R Commander; Estadística Básica con R y R-Commander; R para Principiantes; An Introduction to R.

Utilización: R-Commander

Al principio te sientes un poco perdido, pues quieres que te salga por ciencia infusa y, como todo lenguaje, necesita ser aprendido. Pero no desesperéis, R puede ser manejado desde una interfaz: R-Commander. Se instala con apt-get:

$ sudo apt-get install r-cran-rcmdr

Y Se lanza de manera sencilla. Tan solo tenemos que iniciar R  en consola:

$ R

y escribimos:

>  library(Rcmdr)

Entonces nos aparecerá una ventana como esta:

rcmdr

Y listo. Si, como yo, te abrumas al principio con tanto comando desconocido, esta es una buena manera de comenzar.




Contacto

Cuestiones, sugerencias, criticas,...

Manual LyX: Con “L” de LaTeX


Descarga el manual LyX

Ya van más de 8750 descargas.
¿A qué esperas? (Español, 1.1Mb)

Instala la nueva LyX 2.0.0 Final

Aprender LyX


Descarga el manual LyX

Ubuntu 12.10 LTS “Quantal Quetzal”

Firefox 4

Firefox 4

Ciencia Sin Tijeras

No al recorte en I+D

Feed RSS

Feed RSS



To translate / Traduire

Frases

Busco frases para realizar una colección sobre Linux, software libre e informática en general
mayo 2013
L M X J V S D
« mar    
 12345
6789101112
13141516171819
20212223242526
2728293031  

En twitter

Han pasado (+130000)

  • 889,733 bioinformatiquillos

Archivos

USE FIREFOX

No al soporte gratuito a Microsoft

No use Windows, los gatitos se la agradecerán

Creative Commons License

Esta obra está bajo una licencia de Creative Commons.


Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 232 seguidores

%d bloggers like this: