A curated list of awesome network analysis resources.
Go to file
2016-04-17 12:17:51 +02:00
CONTRIBUTING.md moving contributions guidelines out 2016-04-13 11:47:08 +02:00
README.md Bruggeman 2016-04-17 12:17:51 +02:00

Awesome Network Analysis Awesome

An awesome list of resources to construct, analyze and visualize network data.

Inspired by Awesome Deep Learning, Awesome Math and others.

Table of Contents

Books

Classics

  1. A Novitiate in a Period of Change: An Experimental and Case Study of Social Relationships, by Samuel F. Sampson (unpublished PhD dissertation, 1968).

Dissemination

Accessible introductions aimed at non-technical audiences.

  1. Linked: The New Science of Networks, by Albert-László Barabási - Selected chapters online (2002).

General Overviews

  1. Network Science, by Albert-László Barabási - Full book online (2016).

Graph Theory

  1. Complex Graphs and Networks, by Fan Chung and Linyuan Lu (2006).

Method-specific

  1. Bayesian Networks in R with Applications in Systems Biology, by Radhakrishnan Nagarajan, Marco Scutari and Sophie Lèbre (website; 2013).

Software-specific

  1. Analyzing Social Networks (using UCINET), by Stephen P. Borgatti, Martin G. Everett and Jeffrey C. Johnson (2013).

Topic-specific

  1. Comparing Policy Networks. Labor Politics in the U.S., Germany, and Japan, by David Knoke et al. (1996).

Conferences

Recurring conferences on network analysis.

  1. ASONAM - IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining.

Courses

  1. CS 8803-NS: Network Science, by Constantine Dovrolis - Mostly open access readings (Georgia Tech, 2015).

Datasets

See also Mangal, an online platform and collection of tools to analyze, archive and share ecological network data (preprint, Python package, R package).

  1. Barabási and Albert Network Datasets.

Journals

Journals that are not fully open-access are marked as "gated". Please also note that some of the publishers listed below are deeply hurting scientific publishing.

  1. Applied Network Science (Springer Open).

Professional groups

  1. AFS RT 26 “Réseaux sociaux” - Thematic Network of the French Sociological Association, in French.

Research Groups (USA)

Network-focused research centers, (reading) groups, institutes, labs you name it based in the USA.

  1. Annenberg Networks Network - Research group studying social networks at the University of Southern California.

Research Groups (other)

Network-focused research centers, (reading) groups, institutes, labs you name it based outside of the USA.

  1. Cambridge Networks Network (CNN) - Research network on complex networks.

Review Articles

  1. Basic Notions for the Analysis of Large Two-mode Networks (preprint, related code; Social Networks, 2008).

Software

Several links in this section come from the NetWiki Shared Code page. Software-centric tutorials are listed below their program of choice: other tutorials are listed in the next section.
See also the Social Network Analysis Project Survey (blog post), an earlier attempt to chart social network analysis tools that links to many commercial platforms not included in this list, such as Detective.io.
Also note that the Wikipedia English entry on Social Network Analysis Software links to many commercial that are often very expensive, outdated, and far from being awesome by any reasonable standard.

  1. Cytoscape - Cross-platform Java program to build, analyze and visualize networks. Also a JavaScript library.
  • Discourse Network Analyzer (DNA) - Qualitative content analysis tool with network export facilities, written in Java with R integration.
  • Gephi - Cross-platform, free and open source tool for network visualization.
  • Practical Social Network Analysis With Gephi (2014).
  • GLEAMviz Simulator - Cross-platform tool intended for the prediction of human epidemics.
  • Graphviz - Cross-platform software to draw graphs in the DOT graph drawing language.
  • Graphy - Graph theory library written in Ruby.
  • MuxViz - Cross-platform, free and open source tool to study multilayer networks, based on R and GNU Octave.
  • Neo4j - Open source, scalable graph database, used by companies like Linkurious.
  • NodeXL - Free, open-source template to explore network graphs with Microsoft Excel.
  • ORA-LITE - Windows program for dynamic meta-network assessment and analysis.
  • Pajek - Windows program for large network analysis, free for noncommercial use.
  • Analyse des réseaux : une introduction à Pajek, in French (2011).
  • La détection de communautés avec Pajek 3.6, in French (2012).
  • PNet - Simulation and estimation of exponential random graph models (ERGMs), written in Java for Windows.
  • Radatools - Set of tools intended for the analysis of complex networks, built on top of Radalib, a library written in Ada.
  • Siena - Simulation Investigation for Empirical Network Analysis. Formerly a Windows program, now developed as the RSiena R package.
  • StOCNET - Several Windows programs developed by the same team as Siena.
  • SoNIA (Social Network Image Animator) - Tool to visualize dynamic or longitudinal network data. Formerly a Java program (example movies), now developed as the ndtv R package.
  • UCINET - Windows commercial software package for the analysis of social network data.
  • Visone - Cross-platform Java network analysis and visualization program, free for noncommercial use.
  • VOSviewer - Cross-platform Java tool for constructing and visualizing bibliometric networks.

Algorithms

Network placement and community detection algorithms that do not fit in any of the next subsections.
See also the Awesome Algorithms and Awesome Algorithm Visualization lists for more algorithmic awesomess.

  1. algo.graph - Basic graph theory algorithms written in Clojure.

C / C++

For more awesome C / C++ content, see the Awesome C and Awesome C / C++ lists.

  1. Benchmark Graphs to Test Community Detection Algorithms - C++ code to generate weighted and unweighted graphs.

JavaScript

For more awesome JavaScript libraries, see the Awesome JavaScript list.

  1. Cytoscape.js - Graph theory (a.k.a. network) library for analysis and visualisation.

MATLAB

  1. CONTEST - Random network toolbox that implements nine network models.
  • Generalized Louvain - A variant of the Louvain community detection algorithm.
  • MatlabBGL - A graph library for Matlab, based on the Boost graph library.
  • MATLAB RBN Toolbox - Simulation und visualization of Random Boolean Networks.

Python

Most items below are from a Google spreadsheet by Michał Bojanowski and others.
See also Social Network Analysis with Python, a 3-hour tutorial by Maksim Tsvetovat and Alex Kouznetsov given at PyCon US 2012 (code).
For more awesome Python packages, see the Awesome Python list.

  1. graph-tool - Python module for network manipulation and analysis, written mostly in C++ for speed.
  • graphviz - Python renderer for the DOT graph drawing language.
  • linkpred - Assess the likelihood of potential links in a future snapshot of a network.
  • networkx - Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
  • python-igraph - Python version of the igraph network analysis package.

R

See also this Google spreadsheet by Ian McCulloh and others.
For more awesome R resources, see the Awesome R and Awesome R Books lists.

  1. Bergm - Tools to analyse Bayesian exponential random graph models (BERGM).

Stata

  1. nwcommands: Network Analysis Using Stata (discussion, tutorials and slides).
  • SNA with Stata - Blog documenting the use of the netplot Stata package.

Syntaxes

Generic graph syntaxes intended for use by several programs.

  1. DOT - Graph drawing syntax used by the Graphviz software.

Tutorials

Tutorials that are not focused on a single specific software program.

  1. Basic and Advanced Network Visualization with Gephi and R (2016).

Varia

Resources that does not fit in other categories.

  1. A Sociology Citation Network and A Co-citation Network for Philosophy - Examples of scientific co-citation networks.

Blog Series

Series of blog posts on network topics.
For more blog posts on manipulating networks with R, try searching for networks or social network analysis on the R-Bloggers R blogs aggregator.

  1. Blog Posts About Networks by Aaron Clauset.

Fictional Networks

Explorations of fictional character networks.

  1. Events in the Game of Thrones and Places in the Game of Thrones - Networked chronologies of character alliances, kills and travels in the book series.

Network Science

Discussions of what "netsci" is about and means for other scientific disciplines.

  1. The Emergence of Network Science - Video documentary, featuring Steven Strogatz and many others.

Small Worlds

Links focused on (analogues to) Stanley Milgram's small-world experiment.

  1. The Erdös Number Project - Research project on the collaborative ties and network distance between mathematicians.

License

CC0

To the extent possible under law, the authors of this list by chronological order: François Briatte, Ian McCulloh, Aditya Khanna, Manlio De Domenico, Patrick Kaminski, Ericka Menchen-Trevino have waived all copyright and related or neighboring rights to this work.