Software de Ciencias Sociales

Importar datos de Twitter con NodeXL

Software estadístico para minar, analizar y visualizar datos de sitios de redes sociales.

node xl exemple mining social network

El uso masivo de redes sociales digitales ha motivado la aparición de múltiples herramientas para analizar el tipo de relaciones e interacción que se forman entre los usuarios.

¿Qué es NodeXL?

NodeXL es un plugin o complemento para Excel (2010, 2013, 2016, 365) que permite analizar y visualizar redes digitales.

Esta aplicación fue creada entre el equipo del sociólogo Marc Smith en el Microsoft Research e investigadores de las universidades de Maryland y Washington. Años más tarde el proyecto evolucionaría hasta convertirse en Social Media Research Foundation.

Tutorial NodeXL

En este tutorial mostraremos con mayor detalle cómo utilizar NodeXL para extraer información, en este caso de la red digital Twitter. Aprenderemos a recuperar el rastro digital de datos que dejamos como usuarios activos y a los que con una sencilla herramienta podemos acceder.

Este tutorial sólo se va a limitar a usar una de las opciones de importación, la que permite extraer un volumen considerable de tweets.

Primer paso. La instalación

Instalar NodeXL no supone ningún problema para el usuario promedio. La instalación se realiza en un par de clicks. Tras instalarlo funciona como una plantilla de hoja de cálculo que se incrusta en la interfaz de Microsoft Excel. En la actualidad NodeXL ofrece dos paquetes: una versión gratuita y una versión profesional, ambas para la plataforma Windows. No hay versiones para Linux y Mac.

Social Media Research Fundation, la institución que gestiona el proyecto, comenzó a cobrar por el uso de la versión profesional a principios de 2016. Ésta permite extraer con mayor amplitud un set de datos de diversos sitios de Social Media (Twitter, Facebook, Flickr y Youtube). La versión gratuita también cuenta con esta funcionalidad pero restringe en gran medida el volumen de datos a extraer. Dependiendo del perfil de usuario, la licencia tiene un costo anual de 29 dólares para estudiantes; 199 dólares para uso académico y uso sin ánimo de lucro; y 749 dólares para uso comercial. En este tutorial emplearemos la versión profesional (1.0.1.359).

Luego de instalar la versión profesional y realizar el pago correspondiente, el sistema enviará por correo electrónico un archivo con extensión .lic que valida el uso por un periodo de 12 meses. El procedimiento para activar la licencia es muy sencillo, basta con señalar la ubicación de la licencia cuando el programa lo solicite tras ejecutarlo por primera vez.

nodexl software
Después de instalar y descargar la versión correspondiente de NodeXL, en la barra superior de opciones de Excel aparecerá una pestaña que activa la interfaz de usuario.

Segundo paso. La extracción de datos

Para muchos de nosotros que carecemos de habilidades para escribir un script informático, programar en R o en Python, y conectarse directamente a las APIs (TWR y FB)Como define Taina Bucher una API (Application Programming Interfaces) consiste en la estandarización de métodos que permiten a los componentes de un software acceder a los recursos de otro componente (Taina Bucher, “Objects of Intense Feeling”, Computational Culture, 2013, p. 2.). En el caso de la API o REST API de Twitter se trata de un conjunto de instrucciones que permiten la lectura y escritura de datos provenientes de esa red digital por software o aplicaciones de terceros., la función para importar datos desde NodeXL facilita sin lugar a dudas el acceso directo a la infraestructura informática de Twitter y Facebook. En NodeXL esta opción se localiza en la parte superior izquierda del menú. Basta con dar un click sobre el botón de IMPORT para que se despliegue un submenú con múltiples opciones de importación. Un camino paralelo para la extracción y el análisis de datos, en este caso para Twitter, lo facilita SocioViz. Éste es un proyecto web impulsado por el sociólogo italiano Alessandro Zonin (@AlessandroZonin) y representa una útil alternativa que no requiere instalar ningún tipo de software en el ordenador.

nodexl importacion datos
La funcionalidad de importación de datos facilita enormemente la extracción de información de sitios de redes sociales como Facebook, Twiter, Youtube y Flickr.

Importación desde Twitter

La interfaz dispone de dos opciones de importación: una por palabra clave (Twitter Search Network) y una por usuario (Twitter Users Network, sólo disponible para la versión profesional). Al seleccionar la primera opción el sistema nos permite importar los mensajes por término clave o #hashtag. Esta opción captura, por ejemplo, los temas con mayor actividad comúnmente conocidos como Trending Topics. Por otro lado, la segunda opción facilita la importación de mensajes emitidos por un conjunto específico de usuarios. En este tutorial sólo nos centraremos en la opción de extracción de tweets por palabra clave.

Twitter Search Network

Después de desplegar el cuadro de importación correspondiente, la primera opción de configuración nos solicita introducir el término de búsqueda A fin de acotar la búsqueda global por término es posible emplear los operadores de búsqueda de twitter.com y obtener resultados de mayor precisión.. Con esta instrucción NodeXL pide a Twitter los mensajes emitidos por palabra clave y de publicación reciente. Como veremos al final, el resultado arroja un conjunto de datos tabulados (Workbook) con los micromensajes, el nombre de los usuarios que los emitieron, la relación entre los usuarios, además de una serie de metadatos como el número de tweets que han publicado los usuarios, la fecha en la que se suscribieron a Twitter, la ubicación geográfica, entre otros.

nodexl import data twitter
Twitter Search Network. Cuadro de diálogo de importación de datos.


Como podemos observar en el cuadro de diálogo, a un costado de las opciones de configuración destaca una figura rectangular que ilustra a una red compuesta de múltiples puntos unidos por líneas. Para emplear el vocabulario del Análisis de Redes Sociales (ARS) y comenzar a familiarizarnos con las opciones de la interfaz, el programa interpreta a cada usuario como un vértice (vertex) o nodo, un punto; mientras que considera como aristas (edges) a la relación que los mensajes guardan entre los usuarios, misma que visualmente representa con una línea.
Después de introducir el término clave el siguiente paso es indicar el tipo de red a importar. NodeXL importará el entramado de relaciones entre los usuarios a partir de la publicación de mensajes que contienen la palabra clave. Para ello tenemos dos opciones de configuración: Basic Network y Basic Network plus friends.

Basic Network

En la terminología de Twitter hay dos formas en la que los usuarios interactúan o crean vínculos entre sí (relationship) al participar en la red de los 140 caracteres: las respuestas (replies-to) y las menciones (mentions). Twitter clasifica como una respuesta a un mensaje (tweet) que inicia con una referencia al @nombredeusuario, lo que indica una conversación o referencia directa con el usuario que emitió el mensaje. En lo que toca a las menciones, el @nombredeusuario se encuentra en cualquier otro lugar del cuerpo del mensaje. En este sentido, los retweets (RT) deben considerarse como menciones.

Basic Network. Los puntos indican a los usuarios, mientras que las líneas al tipo de relación que existen entre ellos a partir de los mensajes.
Basic Network. Los puntos representan a los usuarios, mientras que las líneas al tipo de relación que se forma entre ellos a partir de los mensajes.


Cabe subrayar que al no cumplirse ninguna de las dos condiciones, esto es, cuando no existe una referencia directa o indirecta de un usuario a otro en el cuerpo del mensaje, NodeXL tiende a clasificar a esa relación (relationship) como un Tweet. Si imaginamos visualmente el tejido de relaciones, el Tweet estaría representado por un usuario sin vinculación con otros usuarios, un punto sin líneas (edges) de conexión con otros puntos.
En resumen, la opción de Basic Network captura tres tipos de relaciones: respuestas, menciones y tweets.

Límite de registros

Las opciones de configuración también permiten especificar el número de mensajes a importar. El límite máximo por consulta para una Twitter Search Network con NodeXL versión Pro es de 18 mil tweets, mientras que la versión gratuita sólo permite importar 2 mil tweets.

Expand URLs in Tweets

Para quienes han enviado mensajes por Twitter resulta familiar que al ingresar una dirección web ésta es acortada y sustituida en automático por una URL del tipo https://t.co/XYZ123. Twitter implementó esta función de acortador de vínculos por varias razones: dar seguimiento métrico a los enlaces que comparten los usuarios; economizar la extensión de los enlaces (recordemos que hasta el momento el límite de caracteres son 140); y para proteger a los usuarios de vínculos que dirijan a sitios potencialmente maliciosos. Al seleccionar la opción Expand URLs in tweets las direcciones web incluidas en un tweet aparecerán en el formato original, in extenso, una opción de utilidad para conocer el destino de los links que circulan en torno a la consulta solicitada.

Basic Network plus friends

Además de las respuestas, las menciones y los tweets, NodeXL permite capturar una relación adicional, la de suscripción (follows) entre los usuarios. Esto significa que dentro del conjunto de mensajes capturados por término de búsqueda, el sistema registrará la relación de suscripción que actualmente tienen los usuarios en Twitter, esto es, el registro sobre si un usuario está suscrito a la cuenta de otro usuario y viceversa.

nodexl basic network plus friend
Basic Network plus Friend. Esta opción agregar la relación de seguidores (follows) en el conjunto de tweets extraídos.


Al seleccionar esta opción uno debe ser paciente. El proceso de importación demora varios minutos, e incluso horas, dependiendo de la densidad de la red personal de los usuarios. Cuando la cantidad de datos excede el límite permitido por la API de Twitter (rate limiting), el sistema interrumpe el proceso de importación por unos minutos (siendo más precisos, la red de seguidores de 15 usuarios por cada 15 minutos). Por ejemplo, la importación de una red de 300 usuarios tiende a demorar alrededor de 5 horas. Además de la prolongada espera debemos advertir que NodeXL sólo considera a los 5000 seguidores más recientes de la red de un usuario, es decir, si éste cuenta con una red de 10000 seguidores, el sistema sólo captaría la relación de los últimos 5000 usuarios a los que se haya suscrito.

El paso final

Una vez que las opciones de configuración están en orden el último paso es loguearnos en Twitter y dar acceso a la aplicación de NodeXL. Al seleccionar la opción I have a Twitter account, but I have not yet authorized NodeXL to use my account to import Twitter networks… y dar click sobre el botón OK, el sistema nos dirigirá al sitio web de Twitter donde ingresaremos nuestras credenciales de acceso (nombre de usuario y contraseña). Luego de esta acción aparecerá una pantalla con un PIN numérico de siete dígitos, mismo que debemos ingresar en el cuadro de diálogo que aparece en la ventana de NodeXL. Una vez introducido, el proceso de importación iniciará.
Cuando el rastreo se haya completado aparecerá una ventana con la leyenda Text Wrapping. Ésta indica que el proceso de importación se ha completado. Damos click en Yes para continuar.

Text Wrapping
Después de completar el proceso de rastreo aparecerá una ventana con la leyenda Text Wrapping. Dar click en Yes para continuar.


Finalmente, NodeXL agrupará el registro de los datos en dos hojas de cálculo. Allí podremos encontrar el total de usuarios captados (vertices), la relación entre los mismos (edges), los tweets, además de la metainformación vinculada a cada usuario.

Anexo. Las limitaciones

Al utilizar datos provenientes de Twitter debemos ser precavidos y considerar una serie de limitaciones inherentes a este particular sistema de importación, hecho que cuestiona la supuesta objetividad y neutralidad del método REST API ampliamente extendido entre analistas y mercadólogos de la información.

  • Resultados de búsqueda incompletos. Los resultados se registran en términos de la relevancia y no de la totalidad de los mismos, así que es probable que la captura de una palabra clave no represente el conjunto total de los mensajes emitidos.
  • Registros recientes. La opción de Twitter Search Network no proporciona resultados anteriores a una semana, lo que constituye una seria limitación cuando se buscan extraer registros históricos de forma masiva. Esto no es una limitación de NodeXL sino de la API de Twitter. Para tal efecto, Twitter tiene una filial llamada GNIP que se encarga de comercializar la venta de conexiones a Social Data provenientes de múltiples fuentes de Social Media.
  • Consultas diferidas. Twitter utiliza diferentes algoritmos para la consulta directa de tweets desde su web y para la consulta desde aplicaciones de terceros, por lo que es probable que la búsqueda de un término o palabra clave desde NodeXL diferirá de una consulta efectuada directamente desde la web de Twitter y desde otros paquetes informáticos.
unete a discusion comentarios