GithubHelp home page GithubHelp logo

briatte / awesome-network-analysis Goto Github PK

View Code? Open in Web Editor NEW
3.5K 208.0 603.0 1.17 MB

A curated list of awesome network analysis resources.

Home Page: http://f.briatte.org/r/awesome-network-analysis-list

R 100.00%
network-analysis network-visualization complex-networks political-networks semantic-networks graph-theory disease-networks network-science social-networks social-network-analysis

awesome-network-analysis's Introduction

Awesome Network Analysis Awesome DOI

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

Inspired by Awesome Deep Learning, Awesome Math and others. Started in 2016, and irregularly updated since then.

Adamic and Glance’s network of political blogs, 2004.

Network of U.S. political blogs by Adamic and Glance (2004) (preprint).

Note: searching for ‘@’ will return all Twitter accounts listed on this page.

Contents

Books

Classics

Dissemination

Accessible introductions aimed at non-technical audiences.

General Overviews

Graph Theory

Method-specific

Software-specific

Topic-specific

Conferences

Recurring conferences on network analysis.

Courses

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.

Professional Groups

Research Groups (USA)

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

Research Groups (Other)

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

Review Articles

Archeological and Historical Networks

See also the bibliographies by Claire Lemercier and Claire Zalc (section on ‘études structurales’), by the Historical Network Research Group, and by Tom Brughmans.

Bibliographic, Citation and Semantic Networks

Biological, Ecological and Disease Networks

Complex and Multilayer Networks

Ethics of Network Analysis

Network Modeling

Network Visualization

Social, Economic and Political Networks

See also the bibliographies by Eszter Hargittai, by Pierre François and by Pierre Mercklé.

Selected Papers

A voluntarily short list of applied, epistemological and methodological articles, many of which have become classic readings in network analysis courses. Intended for highly motivated social science students with little to no prior exposure to network analysis.

Software

For a hint of why this section of the list might be useful to some, see Mark Round’s Map of Data Formats and Software Tools (2009).
Several links in this section come from the NetWiki Shared Code page, from the Cambridge Networks Network List of Resources for Complex Network Analysis, and from the Software for Social Network Analysis page by Mark Huisman and Marijtje A.J. van Duijn. For a recent academic review on the subject, see the Social Network Algorithms and Software entry of the International Encyclopedia of Social and Behavioral Sciences, 2nd edition (2015).
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. The Wikipedia English entry on Social Network Analysis Software also links to many commercial that are often very expensive, outdated, and far from being awesome by any reasonable standard.
Software-centric tutorials are listed below their program of choice: other tutorials are listed in the next section.

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.

C / C++

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

Java

  • GraphStore - In-memory graph structure implementation, powering Gephi.
  • GraphStream - Java library for the modeling and analysis of dynamic graphs.
  • Mixer - Prototype showing how to use Apache Fluo to continuously merge multiple large graphs into a single derived one.

JavaScript

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

Julia

MATLAB

See also the webweb tool listed in the Python section.

Python

Many 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 and Awesome Python Books lists.

  • bokeh - Python library for interactive data visualization in the browser, with support for networks.
  • cdlib - Python community detection library, with 60+ methods and evaluation/visualization features.
  • dash-cytoscape - Interactive network visualization library in Python, powered by Cytoscape.js and Dash
  • graph-tool - Python module for network manipulation and analysis, written mostly in C++ for speed.
  • Graphinate - Python package aimed at generating graphs from data sources, built on top of networkx.
  • graphviz - Python renderer for the DOT graph drawing language.
  • graspologic - Python package for statistical algorithms, models, and visualization for single and multiple networks.
  • hiveplot - Python utility for drawing networks as hive plots on matplotlib, a more comprehensive network visualization.
  • karateclub - Python package for unsupervised learning on graph structured data with a scikit-learn like API.
  • linkpred - Assess the likelihood of potential links in a future snapshot of a network.
  • littleballoffur - Python package for sampling from graph structured data with a scikit-learn like API.
  • metaknowledge - Python package to turn bibliometrics data into authorship and citation networks.
  • networkx - Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
  • nngt - Library-agnostic graph generation and analysis that wraps around networkx, igraph and graph-tool). Includes normalized graph measures, advanced visualizations, (geo)spatial tools, and interfaces for neuroscience simulators.
  • npartite - Python algorithms for community detection in n-partite networks.
  • parag - Interactive visualization of higher-order graphs in Python.
  • PyGraphistry - Python library to extract, transform, and visually explore big graphs.
  • python-igraph - Python version of the igraph network analysis package.
  • python-louvain - A solid implementation of Louvain community detection algorithm.
  • Raphtory - A platform for building and analysing temporal networks.
  • RAPIDS cuGraph - Python packages and C/C++/CUDA libraries focused on GPU-accelerated graph analytics.
  • rustworkx - A high performance Python graph library implemented in Rust.
  • scipy.sparse.csgraph - Fast graph algorithms based on sparse matrix representations.
  • Snap.py - A Python interface for SNAP (a general purpose, high performance system for analysis and manipulation of large networks).
  • SnapVX - A convex optimization solver for problems defined on a graph.
  • tnetwork - Python library for temporal networks, and dynamic community detection in particular.
  • TQ (Temporal Quantities) - Python 3 library for temporal network analysis.
  • uunet - Tools for multilayer social networks.
  • webweb - MATLAB/Python library to produce interactive network visualizations with d3.js.

R

For more awesome R resources, see the Awesome R and Awesome R Books lists. See also this Google spreadsheet by Ian McCulloh and others.
To convert many different network model results into tidy data frames, see the broom package. To convert many different network model results into LaTeX or HTML tables, see the texreg package.

Stata

Syntaxes

Generic graph syntaxes intended for use by several programs.

Tutorials

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

Varia

Resources that do not fit in other categories.

Blog Series

Series of blog posts on network topics.

Fictional Networks

Explorations of fictional character networks.

Network Science

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

Small Worlds

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

Two-Mode Networks

Also known as bipartite graphs.


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, Tam-Kien Duong, Jeremy Foote, Catherine Cramer, Andrej Mrvar, Patrick Doreian, Vladimir Batagelj, Eric C. Jones, Alden S. Klovdahl, James Fairbanks, Danielle Varda, Andrew Pitts, Roman Bartusiak, Koustuv Sinha, Mohsen Mosleh, Sandro Sousa, Jean-Baptiste Pressac, Patrick Connolly, Hristo Georgiev, Tiago Azevedo, Luis Miguel Montilla, Keith Turner, Sandra Becker, Benedek Rozemberczki, Xing Han Lu, Vincent Labatut, David Schoch, Jaewon Chung, Benedek Rozemberczki, Alex Loftus, Arun, Filippo Menczer, Marc Schiller, Tanguy Fardet, Bernhard Bieri, Rémy Cazabet, Jeremy Gelb, Mathieu Bastian, Michael Szell, Eran Rivlis, Rohan Dandage, Benjamin Smith, Beth Duckles and Lei Cao - have waived all copyright and related or neighboring rights to this work.

Thanks to Robert J. Ackland, Laurent Beauguitte, Patrick Connolly, Michael Dorman, Colin Fay, Marc Flandreau, Eiko Fried, Christopher Steven Marcum, Wouter de Nooy, Katya Ognyanova, Rahul Padhy, Camille Roth, Claude S. Fischer, Cosma Shalizi, Tom A.B. Snijders, Chris Watson and Tim A. Wheeler, who helped locating some of the awesome resources featured in this list.

awesome-network-analysis's People

Contributors

apitts avatar arunppsg avatar benedekrozemberczki avatar briatte avatar hristog avatar j1c avatar jbpressac avatar jdfoote avatar johnrees avatar jpfairbanks avatar jthrilly avatar katrinleinweber avatar keith-turner avatar koustuvsinha avatar luismmontilla avatar m4rcs avatar mbastian avatar mszell avatar peejs avatar qinwf avatar riomus avatar rjackland avatar roger-yu-ds avatar rraadd88 avatar rtremeaud avatar sandrofsousa avatar schochastics avatar taniki avatar tjiagom avatar utkarshmujumdar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-network-analysis's Issues

Network data collection

I know this is awesome network analysis but there is also a need to list resources for collecting network data. I'd be happy to contribute text and links.

Improve the selection of Julia packages

Add "Understanding How Personal Networks Change" data

Via Claude S. Fischer on SOCNET, April 20:

"Data and documentation for the first of three waves of the UCNets - UC Berkeley Social Networks Study - are now available for download on NACDA (National Archive of Computerized Data on Aging), part of ICPSR. The URL is: https://www.icpsr.umich.edu/icpsrweb/ICPSR/studies/36975. These ego-centric data consist of a primary sample of egos (n=1,159) and alters (n~12,000). UCNets is a five-year panel study funded by the National Institute on Aging, R01 AG041955-01. People in two age groups (cohorts) – 21-30 year-olds and 50-70 year-olds — are interviewed three times, beginning in Winter-Spring 2015, allowing us to test how changes in social connections happen and affect health. We draw participants from 6 Bay Area counties: San Francisco, Marin, Alameda, Contra Costa, San Mateo and Santa Clara. During 2015-2016 we interviewed most respondents in person, while the other participants filled out a self-administered web survey. In the second and third waves, some of the participants who were interviewed in person will do the survey online. Two waves have been completed: the third wave is currently in the field (as of March 2018).
Please note that the we are constantly cleaning the data, and the cleanest data are not necessarily available through NACDA."

Add Review Articles subsection on random networks?

Recommended by email:

Batagelj, V, Brandes, U: Efficient generation of large random networks.
PHYS REV E 71 (3): - Part 2 MAR 2005

I personally do not feel the need for such a section, but feel free to chime in to suggest one is needed, and to suggest awesome articles about them.

Short description of data sets

I think some resources are particularly hard to navigate because their name is not enough.
Data sets fall definitively into that category.

For instance, I am looking for large trees datasets, and I have no better idea than going through each of the resources (that is still much better than just googling "large tree data sets", this repository is still awesome!)

Could we add one sentence to describe each data set content? That should probably be done by those data sets, but I am ready to help if necessary.

Add conferences/journals

Possibly missing conference/journals:

ICWSM: International AAAI Conference on Web and Social Media https://www.icwsm.org/2019/index.php

International Journal of Social Network Mining (IJSNM): http://www.inderscience.com/jhome.php?jcode=ijsnm

IEEE Transactions on Computational Social Systems (TCSS): http://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6570650

International Journal of Network Science (IJNS): http://www.inderscience.com/jhome.php?jcode=ijns

Online Social Networks and Media: https://www.journals.elsevier.com/online-social-networks-and-media/

ACM Transactions on Social Computing: https://tsc.acm.org

Trim to strictly awesome resources

  • Continue listing like mad.
  • Leave it to rest for a few days years.
  • Trim the rest. No.

The list is getting out of hand again (~ 300 links). Some of the articles and software sub-lists might contain stuff that is not strictly awesome (e.g. free and cool but unmaintained or badly outdated).

Broken link: Sampson's PhD thesis

The link for Sampson's PhD thesis, "A Novitiate in a Period of Change: An Experimental and Case Study of Social Relationships", seems to be broken.

link to philosopher's dataset broken

In the dataset section, the link to the
Philosophers Networks from Randall Collins's The Sociology of Philosophies
seems to be broken. Searching to the University of Amsterdam website I couldn't find anything there either.

Improve Graph Theory section

Using Math.SE and MathO answers.

1.

Currently featured here:

  • Diestel, Graph Theory
  • Chung and Lu, Complex Graphs and Networks
  • Benjamin, Chartrand and Zhang, The Fascinating World of Graph Theory
  • Durrett, Random Graph Dynamics

Awesome Math also lists

2.

From "book-recommendation, graph-theory, reference-request" questions at Math.SE:

  • Prerequisites for learning (basic) Graph Theory
    • Introductory:
      • Chatrand, Introductory Graph Theory
      • Harris, Combinatorics and Graph Theory
      • West, Introduction to Graph Theory
      • Wilson, Introduction to Graph Theory
    • Introductory, grad-level:
    • More difficult options:
      • Bondy and Murty, Graph Theory
      • Harary, Graph Theory
      • Bollobás, Modern Graph Theory
  • Where to learn Combinatorics & Graph Theory further?
    • More specific recommendations:
      • Bollobás, Extremal Graph Theory
      • Bollobás, Random Graphs
      • Godsil and Royle, Algebraic Graph Theory
      • Mohar and Thomassen, Graphs on Surfaces
      • Oxley, Matroid Theory
  • Introductory Level Books for Graph Theory
    • More praise for:
      • Bollobás
      • West
  • Books recommendation on Graph Theory (Beginner level)
    • More praise for:
      • Bondy and Murty
      • Diestel
      • Harary
      • West
    • Introductory:
      • Brualdi, ?
      • Chartrand and Zhang, A First Course in Graph Theory
    • Recommended from a Combinatorics perspective:
      • Allenby and Slomson, How to Count An Introduction to Combinatorics (one chapter)
      • Goodaire and Parmenter, Discrete Mathematics with Graph Theory ("higher standard")
      • Loehr, Bijective Combinatorics (one chapter)
  • Easy to read books on Graph Theory
    • More praise for:
      • Bondy and Murty (noted as hard for a CS student)
      • Chartrand (and Zhang)
      • West
      • Wilson
    • Introductory:
      • Agnarsson and Greenlaw, Graph Theory-Modeling, Applications and Algorithms
      • Harris, Hirst, and Mossinghoff, Combinatorics and Graph Theory
    • Relevant for CS students:
      • Even, Graph Algorithms
      • Jungnickel, Graphs, Networks and Algorithms
  • What are good books to learn graph theory?
    • More praise for:
      • Agnarsson and Greenlaw
      • Bollobás
      • Bondy and Murty
      • Diestel
      • Harary (advanced)
      • Wilson
    • Introductory:
      • Hartsfield and Ringel, Pearls in Graph Theory: A Comprehensive Introduction
      • Trudeau, Introduction to Graph Theory
    • Introductory, grad-level:
      • Chartrand, Lesniak, and Zhang, Graph and Digraphs
    • Online class:
    • Recommended from a Combinatorics perspective:
      • Bona, A Walk Through Combinatorics
      • Tucker, Applied Combinatorics (disliked by others)
  • Suggest books on Combinatorial Graph Theory
    • More praise for:
      • Harris, Hirst and Mossinghoff
  • What introductory book on Graph Theory would you recommend? (MathOverflow)
    • Skipped a few references in German and Hungarian
    • Introductory
      • Aldous, Wilson and Best, Graphs and Applications: An Introductory Approach
    • More praise for:
      • Bollobás
      • Bondy and Murty
      • Chartrand, Lesniak(, and Zhang)
      • Diestel
      • Gross and Yellen, Graph Theory And Applications
      • Harary
      • Harris, Hirst, and Mossinghoff
      • Hartsfield and Ringel
      • Tucker (disliked by others)
      • West
      • Wilson
    • Relevant for CS students:

See also:

3.

Removed:

  • Chung and Lu
  • Durrett

New selection, advantaging easiest, available online:

  • Introductory/Undergraduate:
    • Benjamin, Chartrand and Zhang, The Fascinating World of Graph Theory (2015)
    • Harris, Hirst, and Mossinghoff, Combinatorics and Graph Theory, 2nd ed. (2008)
    • West, Introduction to Graph Theory, 2nd ed. (2001)
    • Wilson, Introduction to Graph Theory, 5th ed. (2010)
  • Advanced/Graduate:
    • Bondy and Murty, Graph Theory (2008)
    • Chartrand, Lesniak and Zhang, Graphs & Digraphs, 6th ed. (2016)
    • Diestel, Graph Theory, 5th ed., transl. Chinese and German (2016)
  • Lecture notes:
  • Venerable classics:
    • Bollobás, Modern Graph Theory (1998)
    • Harary, Graph Theory (1969)

Also: add Joyner, Nguyen and Cohen to the "Software-specific" section.

Add Review Articles subsection on kinship networks?

Recommended by email:

Batagelj, V., Mrvar, A.: Analysis of Kinship Relations With Pajek.
Social Science Computer Review 26(2), 224-246, 2008.

I personally do not feel the need for such a section, but feel free to chime in to suggest one is needed, and to suggest awesome articles about them.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.