Skip to main content

Python Packages for Networks

  • Living reference work entry
  • First Online:

Synonyms

DeepGraph; graph-tool; igraph; Library; Network description; NetworKit; NetworkX; Snap.py; Tulip; Zen

Glossary

CSV:

Comma-separated values is a plain text format for storing tabular data.

JSON:

JavaScript Object Notation is a data-interchange plain text format.

Large network:

A network with several thousands or millions of nodes.

Network analysis:

A study of networks as representations of relations between discrete objects.

Definition

Python is a high-level general-purpose programming language and easy to understand and learn. To deal with networks, different representations of networks in Python were proposed. On their basis, several Python libraries were developed to support programming of network analysis tasks.

Introduction

Python is an open-source, interpreted, interactive, object-oriented programming language (Python Software Foundation, https://www.python.org/). Its name comes from the BBC TV show Monty Python’s Flying Circus. It runs on all main platforms: Windows,...

This is a preview of subscription content, log in via an institution.

References

  • Al-Taie MZ, Kadry S (2017) Python for graph and network analysis. Springer, Cham

    Book  Google Scholar 

  • Batagelj V, Praprotnik S (2016) An algebraic approach to temporal network analysis based on temporal quantities. Soc Netw Anal Min 6(1):1–22

    Article  MATH  Google Scholar 

  • Berge C (1958) Théorie des graphes et ses applications. Dunod, Paris. The theory of graphs. Courier Co., 1962

    MATH  Google Scholar 

  • Caldarelli G, Chessa A (2016) Data science and complex networks: real cases studies with Python. Oxford University Press, Oxford

    Book  MATH  Google Scholar 

  • Csárdi G, Nepusz T (2006) The igraph software package for complex network research. InterJournal Complex Systems, 1695

    Google Scholar 

  • Dahl OJ, Dijkstra EW, Hoare CAR (1972) Structured programming. Academic, London

    MATH  Google Scholar 

  • de Nooy W, Mrvar A, Batagelj V (2012) Exploratory network analysis using Pajek. Cambridge University Press, Cambridge

    Google Scholar 

  • Doreian P, Mrvar A (2009) Partitioning signed social networks. Soc Networks 31(1):1–11

    Article  MATH  Google Scholar 

  • Doreian P, Batagelj V, Ferligoj A (2005) Generalized blockmodeling. Cambridge University Press, New York

    MATH  Google Scholar 

  • Ferligoj A, Batagelj V (1982) Clustering with relational constraint. Psychometrika 47(4):413–426

    Article  MathSciNet  MATH  Google Scholar 

  • Fouss F, Saerens M, Shimbo M (2016) Algorithms and models for network data and link analysis. Cambridge University Press, Cambridge, UK

    Book  Google Scholar 

  • Gohlke C (2011) Unofficial windows binaries for Python extension packages. http://www.lfd.uci.edu/~gohlke/pythonlibs/

  • Granoveter M (1973) The strength of weak ties. Am J Sociol 78(6):1360–1380

    Article  Google Scholar 

  • Hagberg A, Schult D, Swart P (2008) Exploring network structure, dynamics, and function using NetworkX. In: Varoquaux G, Vaught T, Millman J (eds) Proceedings of the 7th Python in science conference (SciPy 2008), pp 11–15

    Google Scholar 

  • Harary F (1969) Graph theory. Addison-Wesley, Reading

    Google Scholar 

  • Hetland ML (2010) Python Algorithms: mastering basic algorithms in the Python Language. Apress, New York

    Google Scholar 

  • Joyner D, Nguyen MV, Phillips D (2013) Algorithmic graph theory and Sage. https://code.google.com/archive/p/graphbook/

  • Leskovec J, Sosič R (2016) SNAP: a general purpose network analysis and graph mining library. ACM Trans Intell Syst Technol 8(1): 1 https://dl.acm.org/citation.cfm?id=2898361

  • Staudt C, Sazonovs A, Meyerhenke H (2016) NetworKit: a tool suite for large-scale complex network analysis. Netw Sci 4(4):508–530

    Article  Google Scholar 

  • Traxl D, Boers N, Kurths J (2016) Deep graphs – a general framework to represent and analyze heterogeneous complex systems across scales. Chaos 26(6):065303

    Article  MathSciNet  MATH  Google Scholar 

  • Tsvetovat M, Kouznetsov A (2011) Social network analysis for startups: finding connections on the social web. O’Reilly, Sebastopol

    Google Scholar 

  • van Rossum G (1998) Python patterns – implementing graphs. https://www.python.org/doc/essays/graphs/

  • Zykov AA (1969) Teorija konechnyh grafov I. Nauka, Novosibirsk

    Google Scholar 

Download references

Acknowledgments

The work was partially supported by Slovenian Research Agency (ARRS) projects J7-8279 and J1-6720 and grant P1-0294.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vladimir Batagelj .

Editor information

Editors and Affiliations

Section Editor information

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Science+Business Media LLC

About this entry

Check for updates. Verify currency and authenticity via CrossMark

Cite this entry

Batagelj, V. (2018). Python Packages for Networks. In: Alhajj, R., Rokne, J. (eds) Encyclopedia of Social Network Analysis and Mining. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-7163-9_110210-1

Download citation

  • DOI: https://doi.org/10.1007/978-1-4614-7163-9_110210-1

  • Received:

  • Accepted:

  • Published:

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4614-7163-9

  • Online ISBN: 978-1-4614-7163-9

  • eBook Packages: Springer Reference Computer SciencesReference Module Computer Science and Engineering

Publish with us

Policies and ethics