Data mining. Análisis de las actividades de los usuarios en Twitter

Using-TwitterTal como comente en una entrada anterior: Data mining. ¿Cómo extraer la máxima información de Twitter?, el acceso a las bases de datos de Twitter permite que podamos analizar “casi todo” lo que acontece en los flujos de mensajes en la red social de microblogging. En mi nueva actividad de “minero” de datos, hoy voy a ilustrar algunos ejemplos de análisis de la actividad que desarrolla un determinado usuario utilizando el lenguaje de programación R y la extensión twitteR para interaccionar con Twitter.

A través de la API pública de Twitter podemos extraer hasta un máximo de 3.200 tuits generados en los dos últimos meses  de un determinado usuario (userTimeLine) y analizar su actividad. En el ejemplo que presento a continuación se trata de un usuario real que ha generado 1.455 tuits en los dos últimos meses, aunque por razones obvias su identificativo de usuario está anonimizado como @usuarioSrX.  Pues bien, en una primera aproximación analítica podríamos intentar responder algunas preguntas cómo:

¿Cuál ha sido la producción de diaria de tuits?

TA01

Aquí podemos ver una gráfica de la actividad de estos dos últimos meses del usuarioSrX y observar a simple vista su frecuencia tuitera por día. Si aplicamos un análisis de auto-correlación para chequear la aleatoriedad de los datos se puede constatar que la serie en el tiempo analizada se mantienen en los umbrales de aleatoriedad y manifiesta, para el periodo analizado, un modelo de actividad caracterizado por una constancia cotidiana en la actividad del usuario en estudio en Twitter (línea verde).

TA02

En este punto señalar la importancia de cómo visualizar la información y que la misma información la podemos presentar en otros formatos más intuitivos y elegantes, en este caso utilizamos una representación en  forma de un  calendario con un mapa de colores que muestra la densidad de actividad por día.

TA03

Para la elaboración de este mapa he utilizado la función en R, Calendar Heat Map, desarrollada por Paul Bleicher.

Sin embargo, más que la visualización de la producción diaria, nos puede interesar conocer el día o los días de la semana donde @usuarioSrX es más activo:

TA05

También nos podría interesar conocer su actividad por tramo horario:

TA04

Aunque podríamos afinar más y visualizar, según el día de la semana, las horas de más actividad:

TA06

Además, nos puede interesar conocer desde dónde ha escrito los tuits:

TA07

Otras formas de visualizarlo:

TA08

TA09

Estos son algunos ejemplos  de cómo analizar la actividad de los usuarios en Twitter, lo importante a señalar es que una vez que extraemos los datos de los usuarios y su actividad, con el entorno de programación R podemos realizar una explotación analítica exhaustiva de dichos datos de acuerdo con la información que queramos extraer.  Alguien se preguntará para que sirve un análisis de la actividad de un usuario, pues bien, aquí apunto algunas ideas según el rol que queramos asumir:

Como voyeur:  te permite es una mirada más “excitante” sobre la actividad de otros usuarios que va mucho más allá del flujo de un Time Line. Os aseguro que, a partir de ahora, con las herramientas que estoy desarrollando mi nivel de morbo y chafardeo se ha incrementado.

Como ególatra: dispones de indicadores de tu propia actividad en la red de microblogging.

Como Community Manager: permite obtener indicadores de la o las cuentas que gestiona y de las cuentas de otras marcas o entidades de tu competencia para realizar comparativas de actividades.

Como analista político: Por ejemplo, poder monitorizar la actividad de sus señorías en el congreso, minuto a minuto, hora a hora, día a día… no tiene precio, y si además, lo complementamos con el análisis de los contenidos de los tuits, pues eso…

Como : la imaginación al poder. Según tu actividad e interés temático, junto a las correlaciones que puedas establecer con otras fuentes de información, las posibilidades son innumerables. Los caladeros del océano del Big Data son inmensos.

Me vuelvo a la mina.

Actualización: 13/02/2013 Nuevos gráficos mejorados.

4 pensamientos en “Data mining. Análisis de las actividades de los usuarios en Twitter

  1. Jorge

    Hola, interesante esta información. Tengo la duda en cuanto a como obtuviste los datos para el gráfico número 6 (desde donde twitea @UsuarioSrx). No he podido obtener esta información entre la información que extraigo desde Twitter con R.

    Una guía por favor.

    Gracias

    Responder
  2. JLP

    Hola Jorge,

    a) Se extraen de la columna statusSource y se crea una nueva columna (en mi caso disp)
    tw.df$disp < - sapply(tw.df$statusSource, function(x) {gsub("(.*?)","\\1", tw.df$statusSource)})
    b) Si te interesa seleccionar los más utilizados y marcar el resto como “otros” puedes aplicar el siguiente proceso:
    topSources < - names(head(sort(table(tw.df$disp),decreasing=TRUE),5)) tw.df <- within(tw.df, { disp<-as.character(disp) disp[!disp%in%topSources] <- "otros" disp<-factor(disp,levels=names(sort(table(disp),dec=TRUE))) })
    Esto es todo. S2

  3. José Carlos

    Hola, me ha encantado tu artículo.
    Yo estoy ahora mismo aprendiendo a programar en R, y me gustaría mucho conseguir un buen manejo del paquete TwitteR.
    Quería saber si me puedes recomendar algún manual de TwitteR, ya que no encuentro ninguno ni en español ni en inglés.
    Muchas gracias 🙂

    Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *