sábado, 7 de septiembre de 2013

Visualizando asociaciones. Rgraphviz

Hugo Chávez. Asociaciones entre términos presentes en algunos de sus discursos, 1999-2002.

Hugo Chávez. Asociaciones entre términos presentes en algunos de sus discursos, 1999-2002.

En un post anterior empleamos la función findAssocs() del paquete tm, para hallar las asociones más frecuentes en un texto dado. En este caso, buscamos la asociación más frecuente con la palabra pueblo en los discursos emitidos por Chávez. En lugar de obtener un listado podemos visualizar esas asociaciones usando la función plot() incorporada en el paquete. Para ello es necesario bajar el paquete Rgraphviz de Bioconductor. Usaremos esta opción para visualizar algunas asociaciones presentes en los textos emitidos por el presidente Chávez entre 1999 y 2002 seleccionados para el presente análisis. En este post emplearemos los valores por defecto de la función plot y en un próximo post cambiaremos estos valores para obtener un gráfico que nos facilite obtener información adicional a partir del grafo

Visualizando asociaciones. Rgraphviz y tm

Si no tenemos el paquete Rgraphivz instalado en R, es necesario bajarlo desde la página de Bioconductor y luego subirlo a la cónsola:


source("http://bioconductor.org/biocLite.R")
biocLite("Rgraphviz")
require(Rgraphviz)

Podemos usar la configuración por defecto de la función. Esta buscará en la matriz documental, asociaciones entre 20 términos seleccionados al azar que sea igual o superior al 70%. Dado que los términos se seleccionan al azar, cada vez que repitamos la búsqueda, obtendremos 20 términos diferentes. Por lo tanto, aplicaremos la funcion set.seed() de R, que nos permite obtener siempre un mismo resultado. Es decir, permite replicar un procedimiento y obtener un mismo resultado. Aplicando la función con los valores por defecto

set.seed(2345)
plot(tdm.99)

plot of chunk creaAsociacionesBioconductor

La función ha seleccionado al azar términos relacionados con completa, casa, financiamiento, cerrado, méxico, dife, adriani. Los vínculos, las líneas, nos indican las relaciones entre los términos. Un segundo ejemplo:

set.seed(20)
plot(tdm.99)

plot of chunk creaBioconaso

No hay comentarios: