Redes sociales y big data. Las redes sociales son no solo un lugar donde compartir nuestros contenidos y novedades e interactuar con nuestros usuarios. También son la mejor herramienta para obtener datos relevantes para nuestra empresa, como por ejemplo:

PERCEPCIÓN DE NUESTRA MARCA Y ANÁLISIS DEL SENTIMIENTO

Podemos monitorizar sentimientos, opiniones y actitudes negativos, neutrales o positivos respecto a nuestra marca o nuestros productos, precios, servicios de atención al cliente… Redes sociales y big data. Gracias a ello podemos reaccionar y adaptarnos en consecuencia. También podemos detectar temas tabú o asuntos de los que podemos hablar, relacionados con nuestro sector, que generen sentimientos positivos en el consumidor.

SEGMENTACIÓN Y FIDELIZACIÓN DE NUESTRO CONSUMIDOR

Analizando las conversaciones, su comportamiento, las marcas que sigue… podemos definir más fácilmente nuestras buyer personas por categorías mucho más afinadas que la mera demografía, como sus gustos, actitudes, intereses, aficiones… Esto nos permite dar en la diana cuando nos comuniquemos con él y ofrecerle una experiencia más personalizada que ayudará a fidelizarle y facilitará que avance en su ciclo de compra.

MOMENTOS PROPICIOS PARA LA VENTA

Redes sociales y big data. Gracias a las redes sociales podemos detectar los picos de actividad y cuándo los usuarios son más propicios a hacer click en nuestras publicaciones.

DETECCIÓN DE CONSUMIDORES POTENCIALES

Podemos detectar gente que, aunque aún no sea nuestro cliente, tenga patrones similares a los que sí lo son. Una vez detectados, podemos aprovechar lo que sabemos para llevarlos a nuestro terreno y convertirles en clientes, ya sea mediante una promoción o mediante estrategias de ventas más directas.

DETECCIÓN DE INFLUENCERS

Con las redes sociales podemos averiguar no solo a quién siguen nuestros clientes, sino también las personas que más les influencian, que no necesariamente son las que más seguidores tienen. Esto nos ayudará al centrar nuestros esfuerzos e incluso a ahorrar costes (mandando muestras de producto solo a las personas que sean más influenciadoras…)

ESTUDIO DE LA COMPETENCIA

Podemos reunir información sobre cómo se posiciona nuestra competencia en comparación con nosotros e identificar puntos de mejora, en qué lo hacemos mejor que ellos, qué diferencia a sus consumidores de los nuestros…

TENDENCIAS DE CONSUMO Y MERCADO

Las redes sociales permiten vislumbrar los cambios en las tendencias analizando los contenidos y palabras más compartidos. Con esto, podemos detectar desde los colores que se van a poner de moda hasta cuándo algo ya no resulta “cool”. Incluso nos puede dar pistas sobre qué tipo de palabras o lenguaje utilizar al detectar cuáles se muestran más efectivas.

La ingente cantidad de métricas a las que podemos acceder, que para colmo no están unificadas entre las distintas redes, dificulta esta tarea. Ahí es donde entra el Big Data: lo utilizamos para recopilar, limpiar, unificar, organizar y, en definitiva, convertir esos datos en información útil para la empresa. Para ello, es necesario dominar una serie de herramientas y lenguajes de programación, tecnologías en continuo desarrollo, además de llevar a cabo un tratamiento científico de esos datos para convertirlos en información accionable y valiosa.

En nuestro máster de Big Data & Analytics, aprenderás todo esto de manera 100% práctica y de la mano de profesionales del sector, que tienen experiencia de primera mano.

MÁSTER EXPERTO EN BIG DATA & ANALYTICS

Gracias al Master en Big Data Analytics 100% Online tendrás amplios conocimientos sobre las herramientas y técnicas analíticas necesarias para la modelización de los principales retos de negocio, con el fin de mejorar la toma de decisiones a través de los datos y el conocimiento.

Como ya hablamos en el artículo anterior, donde se comentaban los conceptos básicos del análisis de grafos en redes sociales, uno de los usos del análisis de grafos en redes sociales es identificar a los actores clave de la red. Es decir, a aquellos con mayor poder social. Estos actores centrales tienen más facilidad de acceso al resto de nodos y tienen más poder para influenciar en el flujo entre ellos, así que nos interesa tenerlos localizados.

Intuitivamente, podemos pensar que eso es fácil de detectar: con encontrar al que tenga más conexiones basta. No obstante, ¡la realidad es mucho más compleja!

Grado

Hace referencia a la cantidad de aristas que tiene un nodo. En una red no dirigida, cuantas más aristas tenga un nodo, más oportunidades de alcanzar a otros nodos. Es decir, tiene más oportunidades y alternativas para interactuar.

En redes dirigidas es algo más complejo, porque el grado se divide en:

Prestigio de entrada (in-degree), o Soporte

El concepto básico es que los actores que tienen gran prestigio de entrada son prominentes. Es decir, son importantes porque muchos actores intentan tener enlaces directos con ellos.

Prestigio de salida (out-degree) o Influencia.

El concepto básico es que los actores con gran prestigio de entrada son influyentes gracias a la teoría de la fortaleza de los lazos débiles. Esta teoría indica que las mejores oportunidades no suelen venir de las conexiones directas, sino de las conexiones lejanas (amigos de amigos, conceptos relacionados con los conceptos a los que enlaza una idea...).

Problemas con los conceptos de grado

El problema de este concepto de influencia dirigida es que no se aplica a todas las redes. Es muy efectivo a la hora de ver los intercambios comerciales, la búsqueda de empleo o la generación de oportunidades. Pero en otras redes como twitter o la red de enlaces entre webs, el concepto de Influencia se desmorona. Que un nodo tenga un alto grado de entrada sí que le convierte en prominente, porque mucha gente les referencia. No obstante, un nodo con alto grado de salida no tiene que ser necesariamente influyente.

Por ejemplo, pensemos en una web sin importancia, recién creada, que tiene cientos de enlaces. Tendrá un gran grado de salida, pero eso no la convierte en influyente. Igualmente, en una red de comentarios de twitter, que un usuario esté retuiteando, comentando o mencionando a una o varias cuentas en concreto (alto grado de salida) no es una medida de su influencia. Todo lo contrario, son los usuarios cuyos post reciben retweets, menciones o comentarios (alto grado de entrada) los que no solo son prominentes, sino que son influyentes, ya que sus contenidos se viralizan.

Otro  problema de las medidas de grado en general es que lo único que mide es la importancia con respecto a los nodos cercanos, sin importar las conexiones de dichos nodos entre sí y con el resto de la estructura de la red.

Centralidad de vector propio

Es una versión más elaborada de la Centralidad de grado. Esta medida se basa en que la centralidad de un nodo depende de la centralidad de sus vecinos (prominencia). Así, el poder y el status de un actor (ego) lo definimos de forma recursiva a partir del poder y el status de sus vecinos (alters). De esta forma, asume que no todas las conexiones tienen la misma importancia y tiene en cuenta la calidad de las conexiones, no la cantidad. Uno de estos algoritmos es el utilizado por el Pagerank de Google.

Cercanía

Hace referencia a la longitud del camino que tiene un nodo respecto al resto de nodos de la red. Cuanta mejor sea su medida de cercanía, más posibilidad tiene el nodo de interactuar de forma más directa con el resto de nodos de la red. En definitiva, esta medida da importancia a estar cerca del centro de la red.

Más medidas y problemas de la cercanía

En redes dirigidas, la cercanía se divide también en Cercanía de entrada y Cercanía de salida, con todas las limitaciones de las que he hablado antes al hablar del grado de entrada y de salida.

Otro inconveniente de la medida de cercanía es que por lo general se consideran solo aquellos actores desde los que un nodo puede ser alcanzado, no la red completa. Por eso, en redes complejas con varios clusters separados, podemos tener problemas.

Intermediación (Betweenness)

Hace referencia a hasta qué punto un nodo hace de enlace entre otros nodos de la red. Esto le da poder para conectar distintos actores… y para desconectarlos.

Con esta medida, el actor con una posición más intermedia está situado entre los caminos geodésicos de todos los demás. Vamos, que cuantos más nodos necesiten pasar por un nodo para llegar a otros nodos por el camino más corto, más central será.

Esto se traduce en un gran poder por parte de esos usuarios para asuntos tan clave como la viralización de los contenidos. Si un contenido tiene que pasar por un nodo para llegar a un grupo grande y este es el único camino, tendrá un gran poder en la red aunque tenga pocas aristas. Por ese poder de control de la información se les llama porteros (gatekeepers).

Problema de la intermediación

El mayor problema del algoritmo de intermediación es que solo tiene en cuenta los vínculos inmediatos y deja de lado los vínculos indirectos más globales.

Otras medidas de centralidad

Excentricidad

Es otra medida basada en distancias entre nodos, teniendo en cuenta la máxima distancia geodésica entre dos actores. Los nodos con más excentricidad son los más periféricos, mientras que los que tienen menos son los más centrales.

Coeficiente Local de Clustering

Se basa en el concepto de que las redes sociales son transitivas y que los amigos de un nodo suelen ser amigos entre sí también. Pero no todas las redes lo son, así que, para averiguar si son transitivas, nos basamos en el Coeficiente de Clustering que puede ser global (toda la red) o local (cada nodo).

Conclusión

Como vemos, la centralidad está lejos de ser fácil de calcular y es un poco relativa. Elegir la medida de centralidad más adecuada para analizar una red social depende de la propia estructura de la red y de los objetivos que tengamos para localizar a los actores clave. ¿Queremos a una persona a la que sigan muchas personas o queremos encontrar puertas a comunidades a las que actualmente no podamos llegar?

Por lo general, lo interesante a la hora de analizar una red social es aplicar varias medidas de centralidad y ver qué nos encontramos.

MÁSTER EXPERTO EN BIG DATA & ANALYTICS

Gracias al Master en Big Data Analytics 100% Online tendrás amplios conocimientos sobre las herramientas y técnicas analíticas necesarias para la modelización de los principales retos de negocio, con el fin de mejorar la toma de decisiones a través de los datos y el conocimiento.

El análisis de grafos en redes sociales nos puede proporcionar mucha información sobre las comunidades, individuos influyentes y sinergias producidas en dichas redes. En este artículo veremos los conceptos más básicos necesarios para proceder a dicho análisis.

QUÉ ES UNA RED

Una red, básicamente, es un conjunto de nodos conectados por una serie de aristas. Estos nodos no tienen necesariamente que ser personas. También pueden ser países, webs, comunidades o incluso ingredientes en recetas de cocina.

Las aristas, por su parte, son relaciones entre esos nodos. Por lo tanto, pueden ser de diversos tipos: amistad, odio, parentesco, influencia, menciones, transferencias, interacciones, comunicaciones, migraciones… ¡Todo lo que se te pueda ocurrir para conectar un nodo con otro!

QUÉ ES UNA RED SOCIAL

No es más que una red en la que los nodos son individuos y las aristas son las relaciones entre dichos individuos. Estas relaciones pueden ser de amistad, pero también de influencia. Aquí debemos distinguir entre dos tipos de redes:

REDES SOCIALES NO DIRIGIDAS

Son aquellas redes en las que las aristas entre los nodos son todas bidireccionales, es decir, no van en ningún sentido concreto. Por ejemplo, los amigos de Facebook y los contactos de linkedin (si tú eres mi contacto, yo soy tu contacto y viceversa).

REDES SOCIALES DIRIGIDAS

Son aquellas redes en las que las aristas entre los nodos tienen una dirección, es decir, no son necesariamente bidireccionales. Por ejemplo, en twitter, un usuario puede seguir a otro pero ese otro usuario no tiene obligación de seguirle de vuelta. Son dirigidas todas aquellas redes que impliquen alguna mención o enlace a otro individuo que no necesariamente tenga que ser de vuelta (retweets y comentarios, menciones…).

EL PESO DE LAS ARISTAS

En el Análisis de grafos en redes sociales, el peso de las aristas también es una medida importante. Cuanto más peso tenga una arista, significa que la relación entre dos nodos es más fuerte. Por ejemplo, un usuario que retuitea todo lo que postea su ídolo tendrá una arista más gruesa y con más peso que otro que solo le menciona de vez en cuando. Igualmente, en la vida real se podría traducir en que dos amigas que se consideran “mejores amigas” tendrían una arista más gruesa que dos personas que solo se ven de vez en cuando para ir juntas a conciertos.

CONOCER LA ESTRUCTURA DE LA RED

La forma de la red y cómo se interrelacionan sus componentes es importante para conocer mejor fenómenos sociales subyacentes (cómo se transmitirá la información…). Iremos viendo cómo en próximos artículos.

IDENTIFICAR ACTORES CLAVE

Analizar gráfos en redes sociales nos indica el poder social de cada individuo, es decir, su influencia y cómo se concentran las aristas en ciertos individuos. Para hacer estos análisis, tenemos las medidas de centralidad, que es lo que tocaremos en el próximo artículo.

MÁSTER EXPERTO EN BIG DATA & ANALYTICS

Gracias al Master en Big Data Analytics 100% Online tendrás amplios conocimientos sobre las herramientas y técnicas analíticas necesarias para la modelización de los principales retos de negocio, con el fin de mejorar la toma de decisiones a través de los datos y el conocimiento.

Tras ver qué podemos hacer conectando twitter y R y cómo hacerlo, además de algunas de las funciones más importantes, y cómo segmentamos seguidores, toca mostrar algunas de las funciones que nos permiten analizar publicaciones y hashtags.

ANÁLISIS DE PALABRAS MÁS REPETIDAS JUNTO A UN HASHTAG

Ver qué palabras tienen asociadas ciertos hashtags relevantes nos permiten no solo encontrar más hashtags para añadir a nuestra publicación, sino a detectar nuevas temáticas relacionadas y afinar las palabras que usamos en nuestras publicaciones. Lo primero que debemos hacer es instalar y llamar todas las librerías que vimos anteriormente, conectar con la API de twitter, usar la función para sacar la información del hashtag que nos interesa y convertirlo en un dataframe. Luego, lo convertimos en un string y hacemos todas las operaciones que mencioné en el artículo anterior para limpiar el texto al máximo y sacar una tabla de frecuencias con las palabras más repetidas ordenadas. Todas las instrucciones para hacer esto están en los artículos anteriores, por eso pasamos rápido por este punto.

QUÉ USUARIOS SON LOS QUE MÁS USAN ESE HASHTAG

Detectar los usuarios más activos en un tema nos ayuda no solo a detectar seguidores potenciales, sino también a influencers en el tema y a personas que pueden generar contenidos que nos interesa compartir con nuestra audiencia. Hacerlo es muy sencillo: sobre el dataframe que creamos inicialmente para sacar las publicaciones de un determinado hashtag, hacemos lo siguiente:

#qué usuarios son los que más han empleado el hashtag:
#eliminamos los retweet y nos quedamos sólo con los nombres de los usuarios que han escrito el tweet
usuarios <-subset(dataframehashtag,isRetweet==FALSE)$screenName
#Opción 1: los tabulamos y ordenamos.
usuarios<-sort(table(usuarios),decreasing=T)
#Opción 2: ver directamente los x iniciales
usuarios[1:x]

QUÉ CONTENIDOS DE UN HASHTAG SON MÁS POPULARES

En twitter, la medida de popularidad de una publicación está en la interacción que tiene (respuestas, favoritos y retweets, en especial estos dos últimos) así que sacar las publicaciones más populares de un hashtag es tan sencillo como crear un filtro en el dataframe para sacar las publicaciones en las que haya al menos x interacciones

#contenido más retuiteado
#retuiteado + fav
contenido_popular<-filter(dataframehashtag, dataframehashtag[["favoriteCount"]]>x, dataframehashtag[["retweetCount"]]>x)
#solo retuiteado
contenido_popular2<-filter(dataframehashtag, dataframehashtag[["retweetCount"]]>x)

Hay que tener presente que, según el sector, a veces la gente no hace retweet pero sí fav, o al revés, o no hace ninguna de las dos pero sí responde a las publicaciones. También, según el tipo de hashtag, x deberá ser mayor o menor. Así pues, es tan fácil como ajustar el código a las circunstancias. Luego, sobre eso, podemos hacer un nuevo filtro para sacar las palabras más populares del contenido más popular, lo que nos indicará qué no debe faltar en nuestras publicaciones para tener potencial de éxito.

ANÁLISIS DE SENTIMIENTOS DE UN HASHTAG

El análisis de sentimientos nos permite monitorizar opiniones sobre determinados temas, saber hasta qué punto en un sector se utilizan un tipo de mensajes u otros (aprovechando miedos de los consumidores para vender determinados productos frente a ventas atrayendo a los seguidores con los beneficios, por ejemplo)... Para hacerlo, además de las anteriores, necesitamos instalar y ejecutar las librerías SnowballC, tm y syuzhet. Con ellas hay que tener un poco de paciencia, a veces fallan y hay que ejecutarlas varias veces, aunque suelen funcionar de forma correcta. Hecho esto, creamos un dataframe con los datos del hashtag que nos interesa y, quedándonos solo con la columna text, eliminamos hashtags, @, url y toda la información que no es relevante para el análisis mediante la función gsub, que mostré en el artículo anterior. Luego comenzamos a trabajar con definiciones de sentimientos. Por ejemplo, podemos crear una tabla en la que nos muestre si las publicaciones contienen palabras asociadas a los sentimientos principales y cuántas hay.

#Insertando palabras de definición de sentimientos
word.df <- as.vector(dataframehashtag)
emotion.df <- get_nrc_sentiment(word.df)
emotion.df2 <- cbind(bigdata.df2, emotion.df)

Saldrá algo parecido a esto:

análisis datos twitter

También podemos sacar publicaciones donde predomine un sentimiento mediante este código:

#extrayendo puntuación de sentimientos
sent.value <- get_sentiment(word.df)
#más positivos (si queremos los más negativos, cambiamos max por min
most.positive <- word.df[sent.value == max(sent.value)]
#simplemente positivos (si queremos negativos o neutros, poner < o == respectivamente)
positive.tweets <- word.df[sent.value > 0]
#tabla resumen
category_senti <- ifelse(sent.value < 0, "Negative", ifelse(sent.value > 0, "Positive", "Neutral"))
table(category_senti)

Y este es el resumen del código utilizado en la charla de Analizando datos de twitter con R, impartida por Déborah Fernández el pasado día 27. Si queréis ver la charla completa con explicaciones más detalladas y ejecución de parte del código en directo, podéis visitar nuestro canal de youtube.

¿QUIERES APLICAR TODO ESTE CONOCIMIENTO? COMIENZA A A PROGRAMAR EN R

En nuestro curso de Análisis de datos con R aprenderás de forma rápida a utilizar este lenguaje.

Una vez tenemos claro qué podemos hacer conectando twitter y R y cómo hacerlo, además de algunas de las funciones más importantes, es el momento de comenzar nuestro análisis. El análisis de datos de twitter con R seguidores te ofrece la posibilidad de extraer más información sobre tus seguidores.

SEGMENTANDO A MIS SEGUIDORES

Una vez que hemos sacado los seguidores de un usuario con la función getfollowers que comenté en el artículo anterior, podemos hacer una segmentación por idioma, localización, nivel de influencia… El análisis de datos de twitter con R seguidores es clave para conocer más sobre los perfiles

CÓMO SE AUTODEFINEN MIS SEGUIDORES

La descripción de cada usuario en twitter es, obligatoriamente, corta. Esto le obliga a seleccionar muy bien el texto para autodefinirse de la forma más precisa. Así pues, hacer un análisis de esos textos nos ayudará a segmentarlos cualitativamente, aparte de las obvias segmentaciones más clásicas. Para ver las palabras más repetidas mediante una nube de palabras, debemos instalar y llamar las librerías wordcloud y RColorBrewer, además de las que mencioné en el artículo anterior. El análisis de datos de twitter con R seguidores es una serie de artículos.

Lo primero que debemos hacer es conectar con la API de twitter, cargar todas las librerías, sacar la información del usuario cuyos seguidores queremos analizar, conseguir sus seguidores y convertirlo todo en un dataframe (el código está en el artículo anterior). Para este ejemplo, usaremos un dataframe llamado seguidores

#convertimos la descripción de esos seguidores en un String. 
texto2 <- toString(seguidores$description)
#El texto lo transformamos en una lista separada por espacios
texto_split2 = strsplit(texto2, split=" ")
#Deshacemos esa lista y tenemos el data.frame
texto_col2 = as.character(unlist(texto_split2))
texto_col2 = data.frame(toupper(texto_col2))
names(texto_col2) = c("V1")
#Eliminamos algunos caracteres regulares
texto_col2$V1 = gsub("([[:space:]])","",texto_col2$V1)
texto_col2$V1 = gsub("([[:digit:]])","",texto_col2$V1)
texto_col2$V1 = gsub("([[:punct:]])","",texto_col2$V1)
#Creamos una variable longitud de la palabra
texto_col2$largo = nchar(texto_col2$V1)
#Quitamos palabras cortas (también hay funciones que permiten quitar palabras comunes como de, en, para...)
texto_col2 = subset(texto_col2,largo>4 & largo<=10)
#crear dataframe
palabras_seguidores = data.frame(table(texto_col2$V1))
#Ordenamos
palabras_seguidores_f<-filter(palabras_seguidores, palabras_seguidores[["Freq"]]>3)
arrange(palabras_seguidores_f, desc(palabras_seguidores_f[["Freq"]]))
#Hacemos la nube de palabras
wordcloud(words = palabras_seguidores_f$Var1, freq = palabras_seguidores_f$Freq, min.freq = 1, max.words=200, random.order=FALSE, rot.per=0.35,colors=brewer.pal(8, "Dark2"))

De esta forma, tendremos una tabla ordenada con las palabras más frecuentes y una nube de palabras que nos permitirá ver los resultados de una forma más sencilla y bonita. Por ejemplo, si lo hacemos con los seguidores de la academia digital para personas con discapacidad de Fundación ONCE, cuyos cursos hemos llevado a cabo, veremos algo parecido a esto:

análisis datos twitter

Como veis, de un solo vistazo vemos qué intereses tienen nuestros seguidores (o los seguidores de cualquiera) por orden de importancia, lo que nos da mucha información sobre ellos.

Optimizando followbacks

A la hora de crear una estrategia de followbacks efectiva no tenemos que perder el tiempo siguiendo a todo el que sigue a nuestra competencia para que nos siga de vuelta. Lo que debemos hacer es dirigirnos directamente a la gente que tiene potencial interés en nuestro tema, segmentada por lenguaje o localización y que además no sea de los que basan completamente en el followback su estrategia de crecimiento en redes sociales.

Para ello, podemos crear una columna nueva con la diferencia de seguidores y seguidos filtrando luego las filas con las características que nos interesan:

#creamos una columna nueva con la diferencia de seguidores y seguidos
followbackseguidores<-mutate(seguidores, DiferenciaSeguidos = followersCount-friendsCount)
#nos quedamos solo con las filas que tienen parámetros que nos interesan, en este caso lenguaje inglés con más seguidores que seguidos
followback1<-filter(followbackseguidores, lang=="en", DiferenciaSeguidos==TRUE)

Podemos incluso hilar más fino y quedarnos solo con los que en su descripción contienen ciertas palabras. análisis de datos de twitter con R seguidores

value <- "palabraquequieres"
followback2<-transmute(followback1, screenName, description, lang, DiferenciaSeguidos, contieneBD=grepl(value, followback1$description))
followback3<-followback2[followback2$contieneBD==TRUE,]

¿QUIERES APLICAR TODO ESTE CONOCIMIENTO? COMIENZA A A PROGRAMAR EN R

En nuestro curso de Análisis de datos con R aprenderás de forma rápida a utilizar este lenguaje.

 

Ya hemos hablado en otra entrada de qué es R y de su potencial. Hoy, nos centraremos en cómo puede esta herramienta ayudarnos a sacar el máximo partido de nuestros datos de twitter. Cada vez hay más librerías relacionadas con twitter que podemos utilizar para extraer y analizar estos datos, pero para este caso utilizaremos Twitter. ANÁLISIS DE DATOS DE TWITTER CON R

DATOS DE LOS TEXTOS GENERADOS

Cada tweet creado nos da mucha información relevante: desde su origen en según qué plataformas hasta cuántas interacciones posee, aparte del propio texto. En esta imagen, podemos ver qué información nos dan algunos de los tweets de datahack. ANÁLISIS DE DATOS DE TWITTER CON R

datos que podemos sacar de un tweet para análisis

DATOS DE LOS USUARIOS

Entre los datos más relevantes de cada usuario, podemos sacar desde su propia autodescripción, su nivel de influencia (seguidores-seguidos), cómo de activo es, procedencia… En esta imagen podemos ver la información de nuestro usuario @datahack_

datos que podemos sacar de un usuario para análisis

ANÁLISIS RELEVANTES

Con todo lo recogido, podemos sacar información bastante útil para optimizar nuestro posicionamiento y el tipo de mensajes que mandamos en las redes sociales y podemos realizar:

CÓMO EMPEZAR EL ANÁLISIS DE DATOS DE TWITTER CON R

Para conectar twitter con el programa en el que estemos ejecutando el lenguaje R, lo primero que necesitamos es una cuenta en la API de twitter. Una vez que la tengamos, podremos conectarnos gracias a las claves que nos proporcione.

La API de twitter tiene algunas limitaciones, como un número máximo de tweets recuperados por consulta y una limitación de tiempo mínimo entre consulta y consulta. Si nos pasamos podemos ser bloqueados, así que tenemos que tener cuidado y poner siempre un tamaño de muestra inferior a 200, sin hacer varias consultas en la misma ejecución. Si necesitamos muestras más grandes, podemos hacer varias consultas periódicamente en las que vayamos descargando datos (son en orden cronológico) y uniéndolos, por ejemplo. ANÁLISIS DE DATOS DE TWITTER CON R

En cualquier caso, lo más interesante del análisis de datos en twitter es la inmediatez, para ver las tendencias de cada momento, ya que los hashtags populares y las palabras asociadas a los mismos, por ejemplo, pueden cambiar de un día para otro, por lo que con una muestra de 100 es más que suficiente.

Conectaremos la API de twitter con R mediante el siguiente código:

# Cargar las credenciales
consumer_key <- "xxx"
consumer_secret <-"xxx"
access_token <-"xxx"
access_secret <-"xxx"
setup_twitter_oauth(consumer_key, consumer_secret, access_token=access_token, access_secret=access_secret)

FUNCIONES BÁSICAS

Una vez hecho esto, podemos ponernos a trabajar. Algunas de las funciones más básicas que debemos aprender son las llamadas para recuperar información y cómo convertirlas en dataframes   con los que trabajar. No olvidemos que, para trabajar con los datos de twitter, tendremos que instalar y llamar las librerías twitteR, base64enc y tidyverse

SACAR TODA LA INFORMACIÓN DEL TIMELINE Y CARACTERÍSTICAS DE UN USUARIO

#sacar tweets de un usuario:
usuario<- userTimeline('usuario',n=100)

Para conseguir solo algunos de los datos más importantes, como seguidores y seguidos, podemos usar este código (sin olvidar convertirlo después en un dataframe):

#Sacar información de un usuario:
usuario<- getUser('usuario')
#conseguir sus seguidores
usuario_seguidores <- usuario$getFollowers(retryOnRateLimit=120)
#conseguir sus seguidos
usuario_seguidores <- usuario$getFriends(retryOnRateLimit=120)

SACAR TODA LA INFORMACIÓN DE UN HASHTAG

#buscamos el hashtag, limitamos la búsqueda a 100 tweets desde el 01 de junio de 2018.
hashtag<-searchTwitter("#hashtag", n=100, since='2018-06-01')

HACER LOS DATAFRAMES

No hay que olvidar que toda esta información que saquemos, para trabajar con ella, hay que convertirla en un dataframe con la función do.call o twListToDF. Esta es la estructura de ambas:

do.call("rbind", lapply(xxx, as.data.frame))
twListToDF(xxx)

ANÁLISIS DE DATOS DE TWITTER CON R. Una vez que tenemos todo esto, podemos comenzar a trabajar en el análisis de toda esa información, que es lo que mostraremos en los próximos artículos:

¿QUIERES APLICAR TODO ESTE CONOCIMIENTO? COMIENZA A A PROGRAMAR EN R

En nuestro curso de Análisis de datos con R aprenderás de forma rápida a utilizar este lenguaje.

 

chevron-down