viernes, 17 de julio de 2015

Capturando redes de Facebook con R

Cómo analizar a sus amigos de la red Facebook con R

El paquete de Twitter, lanzado en 2010, ha proporcionado durante mucho tiempo los medios para acceder y analizar sus datos de redes sociales de Twitter con R. Pero hasta hace poco, no ha habido nada comparable para la red social Facebook. Pero ahora, gracias a Pablo Barbera, existe el paquete RFacebook que proporciona un conjunto de funciones de R para acceder a los datos de la red social Facebook.

Para utilizar RFacebook, primero tiene que registrarse para obtener una cuenta de desarrollador de Facebook, que es rápido y fácil, siempre y cuando usted ya tiene un perfil en Facebook. JulianHi ofrece un excelente tutorial paso a paso sobre cómo empezar con RFacebook, incluyendo la configuración de la aplicación de Facebook y generar el token authentition que será necesaria para el uso de las funciones RFacebook.

Una vez que estés autenticado, puede utilizar las funciones RFacebook para consultar su lista de amigos y obtener información acerca de sus amigos (y sus conexiones con sus otros amigos). He utilizado el código de abajo para consultar mis amigos de Facebook, y utilicé el paquete igraph dibujar mi red social:

require(Rfacebook)
load("fb_oauth.Rd") ## load my previously saved authentication token
 
me <- getUsers("me", token=fb_oauth)
my_friends <- getFriends(token=fb_oauth, simplify=TRUE)
my_friends_info <- getUsers(my_friends$id, token=fb_oauth, private_info=TRUE)
my_network <- getNetwork(fb_oauth, format="adj.matrix")
singletons <- rowSums(my_network)==0 # friends who are friends with me alone
 
require(igraph)
my_graph <- graph.adjacency(my_network[!singletons,!singletons])
layout <- layout.drl(my_graph,options=list(simmer.attraction=0))
plot(my_graph, vertex.size=2, 
     #vertex.label=NA, 
     vertex.label.cex=0.5,
     edge.arrow.size=0, edge.curved=TRUE,layout=layout)
Quité los únicos de la tabla de abajo para que sea más sencilla, mediante la exclusión de los amigos eran amigos de mí, pero ninguno de mis otros amigos.


Amigos de Facebook

Decidí no incluir los nombres de mi amigo en la tabla, pero los grupos que genera son buenas representaciones de mis diversos círculos sociales. El grupo aislado en la parte superior derecha es mis amigos de la infancia de Australia, que no conocen a ninguno de mis amigos en el resto del mundo. Otros grupos aislados son mis amigos del Reino Unido, el trabajo y amigos relacionados con R-y amigos de California. El grupo más grande es mi principal red social de Seattle. Es bastante impresionante cómo usar sólo las relaciones amigo (el gráfico de adyacencia), aparecen mis círculos sociales "naturales". Estoy seguro de que baremo hacer más con el informativo adicional disponible, que incluye el cumpleaños, la ubicación, la foto de perfil y estado civil de sus amigos. Sólo se puede acceder a la información que se podía ver en facebook.com, e incluso entonces sólo un subconjunto: sólo se puede acceder a información sobre las personas que son amigos de (incluso si tienen perfiles públicos), y no se puede ver todo de tus amigos red social, sólo la parte que está a sólo amigos. Aún así, es una rica fuente de datos para jugar, y estoy seguro de capacidades adicionales serán expuestos en la API RFacebook conforme pasa el tiempo.

Si usted quiere probar RFacebook ti mismo, empezar en el siguiente enlace.

Revolutions

No hay comentarios:

Publicar un comentario en la entrada