README.md |
Awesome Network Analysis
An awesome list of resources to construct, analyze and visualize network data.
Table of Contents
- Books
- Courses
- Datasets
- Journals
- Professional groups
- Review Articles
- Software
- Tutorials
- Varia
- Contribution Guidelines
Books
Overviews
- Networks. An Introduction, by Mark E.J. Newman (2010).
- Networks, Crowds, and Markets: Reasoning About a Highly Connected World, by David Easley and Jon Kleinberg; complete pre-publication draft online (2010).
- Réseaux sociaux et structures relationnelles, by Emmanuel Lazega, in French (2014).
- Sociologie des réseaux sociaux, by Pierre Mercklé, in French (2011).
- Social Network Analysis. Methods and Applications, by Stanley Wasserman and Katherine Faust (1994).
Method-specific
- Exponential Random Graph Models for Social Networks, by Dean Lusher, Johan Koskinen and Garry Robins (2013).
- Multilevel Network Analysis for the Social Sciences, by Emmanuel Lazega and Tom A.B. Snijders (2016).
- Political Networks. The Structural Perspective, by David Knoke (1994).
Software-specific
- Analyzing Social Networks (using UCINET), by Stephen P. Borgatti, Martin G. Everett and Jeffrey C. Johnson (2013).
- Network Analysis with R/igraph, by Gabor Csárdi, Thomas Nepusz and Eduardo M. Airoldi (in preparation).
- Network Analysis with Python/igraph, by Thomas Nepusz, Gabor Csárdi and Eduardo M. Airoldi (in preparation).
- Statistical Analysis of Network Data with R, by Eric D. Kolaczyk and Gabor Csárdi (2014).
Topic-specific
- Neighbor Networks. Competitive Advantage Local and Personal, by Ronald S. Burt (2010).
- Comparing Policy Networks. Labor Politics in the U.S., Germany, and Japan, by David Knoke et al. (1996).
Courses
- Complex Networks, by Peter Sheridan Dodds (2016).
Datasets
- KONECT - The Koblenz Network Collection.
- Mark E.J. Newman's Network Data.
- Pajek Datasets
- Siena Datasets.
- Stanford Large Network Dataset Collection.
- tnet Datasets.
- UCI Network Data Repository.
Journals
- Applied Network Science (Springer Open).
- Computational and Mathematical Organization Theory (Springer).
- Computational Social Networks (Springer Open).
- Connections (INSNA).
- Journal of Complex Networks (Oxford).
- The Journal of Mathematical Sociology (Taylor & Francis).
- Journal of Social Structure (INSNA).
- Network Science (Cambridge).
- REDES, in Spanish (INSNA).
- Social Network Analysis and Mining (Springer).
- Social Networks (Elsevier).
Professional groups
- AFS RT 26 “Réseaux sociaux” - Thematic Network of the French Sociological Association, in French.
- ECPR Political Networks SG - Standing Group of the European Consortium for Political Research (Twitter account).
- GDR Analyse de réseaux en sciences humaines et sociales, in French.
- Groupe FMR - Flux, Matrices, Réseaux, in French.
- INSNA: International Network for Social Network Analysis (mailing-list).
- NetSci: Network Science Society.
- APSA Political Networks - Organized Section of the American Political Science Association.
Review Articles
- "Network Analysis and Political Science" (Annual Review of Political Science, 2011).
- "Statistical Models for Social Networks" (Annual Review of Sociology, 2011).
Software
- Cytoscape - Cross-platform Java program to build, analyze and visualize networks.
- 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.
- GraphViz - Software to draw graphs in the DOT language.
- Neo4j - Open source, scalable graph database, used by companies like Linkurious.
- networks.tb - A suite designed for analyzing socio-semantic networks, written in C.
- NodeXL - Free, open-source template for Microsoft Excel to explore network graphs.
- ORA-LITE - Windows program for dynamic meta-network assessment and analysis.
- Pajek - Windows program for large network analysis, free for noncommercial use.
- PNet - Simulation and estimation of exponential random graph models (ERGMs), written in Java for Windows.
- Siena - Simulation Investigation for Empirical Network Analysis, formerly a Windows program, now an R package.
- Stanford Network Analysis Project - C++ general purpose network analysis and graph mining library; available as a Python library and through NodeXL.
- 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 software tool for constructing and visualizing bibliometric networks, written in Java.
JavaScript
For more awesome Python packages, see the Awesome JavaScript list.
- d3.js - JavaScript visualization library that can plot force-directed graphs.
- jLouvain - Louvain community detection for Javascript (example).
- Sigma - JavaScript library dedicated to graph drawing.
- vis.js - JavaScript library with network visualization capabilities.
Python
Most items below are from a Google spreadsheet by Michał Bojanowski and others.
For more awesome Python packages, see the Awesome Python list.
- 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 packages, see the Awesome R list.
- Bergm - Tools to analyse Bayesian exponential random graph models.
- CCAS - A statistical model for communication networks.
- concoR - A translation of the CONCOR network blockmodeling algorithm (blog post).
- ergm - Estimation of Exponential Random Graph Models.
- GERGM - Estimation and diagnosis of the convergence of Generalized Exponential Random Graph Models (GERGM).
- geomnet - A single-geometry approach to network visualization with ggplot2.
- ggnetwork - A multiple-geometries approach to plot network objects with ggplot2.
- ggraph - A grammar of graph graphics built in the spirit of ggplot2.
- hergm - Estimate and simulate hierarchical exponential-family random graph models with local dependence.
- igraph - A collection of network analysis tools.
- latentnet - Latent position and cluster models for network objects.
- networkD3 - D3 JavaScript network graphs from R.
- ndtv - Tools to construct animated visualizations of dynamic network data in various formats.
- network - Basic tools to manipulate relational data in R.
- networkDynamic - Support for dynamic, (inter)temporal networks.
- rgexf - Export network objects from R to GEXF, for manipulation with network software like Gephi or Sigma.
- RSiena - Simulation Investigation for Empirical Network Analysis; fits models to longitudinal network data.
- sna - Basic network measures and visualization tools.
- spnet - Methods for dealing with spatial social networks.
- statnet - The project behind many R network analysis packages.
- tnet - Network measures for weighted, two-mode and longitudinal networks.
- tsna - Tools for temporal social network analysis.
- visNetwork - Using vis.js library for network visualization.
- xergm - Extensions of Exponential Random Graph Models.
Tutorials
- Analyse des réseaux : une introduction à Pajek, in French (2011).
- Basic and Advanced Network Visualization with Gephi and R (Sunbelt 2016).
- Exponential Random Graph Models (ERGMs) Using statnet (Sunbelt 2015).
- Guides for Using the statnet Package (2010).
- Implementing an ERGM From Scratch in Python (2014).
- L'analyse des graphes bipartis, in French (2013).
- La détection de communautés avec Pajek 3.6, in French (2012).
- Modeling Valued Networks with statnet (Sunbelt 2013).
- Network Analysis and Visualization with R and igraph (NetSciX 2016).
- Practical Social Network Analysis With Gephi (2014).
- Static and Dynamic Network Visualization with R (PolNet 2015).
- Working with Bipartite/Affiliation Network Data in R (2012).
Varia
- Blog posts about networks by Pierre Mercklé, in French.
- Network Fact - A Twitter account about networks, graph theory, and related topics.
- Videos from the Political Networks 2009 conference.
Contribution Guidelines
Please contribute to this list by sending a pull request after reading the Contribution Guidelines for stylistic indications.
- All sources are organized alphabetically with date and language mentions when relevant.
- Authors are mentioned for books and courses only.
- To cite R packages, please cite the stable CRAN version when it exists.
- To cite Python packages, please cite the PyPi version when it exists.
Remember that an awesome list has to be, well, awesome. The "Awesome Manifesto" states:
Only awesome is awesome
Research if the stuff you're including is actually awesome. Put only stuff on the list you or another contributor can personally recommend and rather leave stuff out than include too much.
...
Comment on why something is awesome
Apart from suggesting a particular item on your list, you should also inform your readers why it's on the list and how they will benefit from it.
Please also add your name to the copyright waiver below.
License
To the extent possible under law, the authors of this list (François Briatte, Ian McCulloh) have waived all copyright and related or neighboring rights to this work.