Twitter community evolution framework
We make available a Twitter interaction network collector and a set of Matlab scripts that enable the analysis of social interaction networks with the goal of uncovering evolving communities. More specifically, the interaction network collector forms a network between Twitter users based on the mentions in the set of monitored tweets (using the Streaming API). The network of interactions is adaptively partitioned into snapshot graphs based on the frequency of interactions (more details in [1]). Then, each graph snapshot is partitioned into communities using the Louvain method [2]. Finally, evolving communities are extracted by matching the communities of the current graph snapshot to communities of previous snapshots.
This distribution contains the following:
- a readme.txt file with instructions on how to use the different parts of the framework;
- a data collector (in the /crawler folder) that makes use of the Twitter Streaming API to collect mention networks between Twitter users;
- a set of Matlab scripts (in the /matlab folder) that are used to conduct the different network analysis steps described in [1];
- the set of data used in [1] (anonymized due to Twitter terms of service).
In case you use this implementation in your research, please cite [1].
The source code of this project (not incl. the data collector) will be maintained in the following public github repository.
[1] K. Konstandinidis, S. Papadopoulos, Y. Kompatsiaris. "Community Structure, Interaction and Evolution Analysis of Online Social Networks around Real-World Social Phenomena". In Proceedings of PCI 2013, Thessaloniki, Greece (to be presented on September)
[2] V. Blondel, J.-L. Guillaume, R. Lambiotte, E. Lefebvre. "Fast unfolding of communities in large networks". In Journal of Statistical Mechanics: Theory and Experiment (10), P10008, 2008