What does this package do?
vosonSML is an R package that provides a suite of tools for collecting and constructing networks from social media data. It provides easy-to-use functions for collecting data across popular platforms (Instagram, Facebook, Twitter, and YouTube) and generating different types of networks for analysis.
vosonSML is the
SocialMediaLab package, renamed. We decided that
SocialMediaLab was a bit too generic and also we wanted to indicate the connection to the Virtual Observatory for the Study of Online Networks Lab, where this package was conceived and created.
The latest 'official' version of the package can also be found on CRAN.
Current known issues
If you are getting the error
Error in check_twitter_oauth( ), please find a solution here.
If you are having trouble getting data from Facebook, it is probably due to a known issue with authentication for the
Rfacebook package, which has a solution.
Instagram API access is severely limited if you do not have an authorised app, which is significantly harder to obtain nowadays.
For detailed information and examples, please refer to the vosonSML documentation.
The vosonSML page on the VOSON website also has several "how to" guides, including an "Absolute Beginners Guide to vosonSML" tutorial aimed at people with little or no programming experience.
Using Magrittr's pipe interface
The process of authentication, data collection and creating social network can be expressed with the 3 verb functions: Authenticate, Collect and Create. The following are some of the examples from the package documentation expressed with the pipe interface.
require(magrittr) # Authenticate with youtube, Collect data from youtube and Create an actor network Authenticate("youtube", apiKey= apiKey) %>% Collect(videoIDs = videoIDs) %>% Create("Actor") # Authenticate with facebook, archive the API credential, Collect data about Starwars Page and Create a bimodal network # You can use facebook, FaCebooK or Facebook in the datasource field Authenticate("Facebook", appID = appID, appSecret = appSecret) %>% SaveCredential("FBCredential.RDS") %>% Collect(pageName="StarWars", rangeFrom="2015-05-01",rangeTo="2015-06-03") %>% Create("Bimodal") # Authenticate with Twitter, Collect data about #auspol and Create a semantic network Authenticate("twitter", apiKey=myapikey, apiSecret=myapisecret,accessToken=myaccesstoken, accessTokenSecret=myaccesstokensecret) %>% Collect(searchTerm="#auspol", numTweets=150) %>% Create("Semantic") # Create Instagram Ego Network myUsernames <- Authenticate("instagram", appID = myAppId, appSecret = myAppSecret) %>% Collect(ego = TRUE, username = c("adam_kinzinger","senatorreid")) %>% Create
The following networks were created in vosonSML and visualised using the Gephi software.
Facebook bimodal network (Star Wars page)
This network visualises two weeks of activity on the Star Wars Facebook page. Nodes (vertices) represent either users or posts, and node ties (edges) represent either 'likes' or comments. Nodes are sized by out-degree and coloured by modularity cluster.
Instagram ego network
This network visualises the social network of one user (the 'ego' node) on Instagram. The degree of the network is "2", meaning that it shows ego + alters ("followers of ego") and ego + alters + alters of alters of ego "followers of followers of ego". 'Follows' data are also collected, so this network also shows "users who ego follows" and "users who followers of ego follow".