Complex Network Analysis in Python: Recognize – Construct – Visualize – Analyze – Interpret

Complex Network Analysis in Python: Recognize – Construct – Visualize – Analyze – Interpret

Construct, analyze, and visualize networks with networkx, a Python language module. Network analysis is a powerful tool you can apply to a multitude of datasets and situations. Discover how to work with all kinds of networks, including social, product, temporal, spatial, and semantic networks. Convert almost any real-world data into a complex network–such as recommendations on co-using cosmetic products, muddy hedge fund connections, and online friendships. Analyze and visualize the network, and make business decisions based on your analysis. If you’re a curious Python programmer, a data scientist, or a CNA specialist interested in mechanizing mundane tasks, you’ll increase your productivity exponentially.Complex network analysis used to be done by hand or with non-programmable network analysis tools, but not anymore! You can now automate and program these tasks in Python. Complex networks are collections of connected items, words, concepts, or people. By exploring their structure and individual elements, we can learn about their meaning, evolution, and resilience.Starting with simple networks, convert real-life and synthetic network graphs into networkx data structures. Look at more sophisticated networks and learn more powerful machinery to handle centrality calculation, blockmodeling, and clique and community detection. Get familiar with presentation-quality network visualization tools, both programmable and interactive–such as Gephi, a CNA explorer. Adapt the patterns from the case studies to your problems. Explore big networks with NetworKit, a high-performance networkx substitute. Each part in the book gives you an overview of a class of networks, includes a practical study of networkx functions and techniques, and concludes with case studies from various fields, including social networking, anthropology, marketing, and sports analytics.Combine your CNA and Python programming skills to become a better network analyst, a more accomplished data scientist, and a more versatile programmer.What You Need:You will need a Python 3.x installation with the following additional modules: Pandas (>=0.18), NumPy (>=1.10), matplotlib (>=1.5), networkx (>=1.11), python-louvain (>=0.5), NetworKit (>=3.6), and generalizesimilarity. We recommend using the Anaconda distribution that comes with all these modules, except for python-louvain, NetworKit, and generalizedsimilarity, and works on all major modern operating systems.


10 in stock

Secure Payments

Pay with the worlds payment methods.

Discount Available

Covers payment and purchase gifts.

100% Money-Back Guarantee

Need Help?

(484) 414-5835

Share Our Wines With Your Friends & Family


Editorial Reviews


  • “This book is an excellent read for anyone who wants to learn the fundamentals of complex network analysis with a focus on application. The case studies cover a variety of topics and help readers link concepts to applications, providing readers with a clear, well-structured, hands-on experience that deepens their understanding of the concepts without requiring Python programming experience.” – Kate Li, Ph.D., Associate professor, Sawyer Business School, Suffolk University
  • “As a social scientist interested in network analysis but having limited knowledge of Python, I found the book very useful. The author explains technical problems in a way that is easy to understand for non-computer scientists. It is a great introduction for those interested in network analysis seeking to apply the method in their research.” – Weiqi Zhang, Associate professor of government, Suffolk University
  • “Complex Network Analysis in Python is a thorough introduction to the tools and techniques needed for complex network analysis. Real-world case studies demonstrate how one can easily use powerful Python packages to analyze large networks and derive meaningful analytic insights.” – Mike Lin, Senior software engineer, Fugue Inc.
  • “Having a deep understanding of complex network analysis is hard; however, this book will help you learn the basics to start mastering the skills you need to analyze complex networks, not only at a conceptual level but also at a practical level, by putting the theory into action using the Python programming language.” – Jose Arturo Mora, Head of information technology and innovation, BNN Mexico
  • “Complex networks have diverse applications in various fields, including healthcare, social networks, and machine learning. I found this book to be an excellent and comprehensive resource guide for researchers, students, and professionals interested in applying complex networks.” – Rajesh Kumar Pandey, Graduate student, IIT Hyderabad

About the Author

Dmitry Zinoviev has graduate degrees in physics and computer science with a PhD from Stony Brook University. His research interests include computer simulation and modeling, network science, network analysis, and digital humanities. He has been teaching at Suffolk University in Boston, MA since 2001. He is the author of Data Science Essentials in Python.

–This text refers to the paperback edition.

From the Publisher

From the Preface

Who should read this book

This book is intended for graduate and undergraduate students, complex data analysis (CNA) or social network analysis (SNA) instructors, and CNA/ SNA researchers and practitioners. The book assumes that you have some background in computer programming? namely, in Python programming. It expects from you no more than common sense knowledge of complex networks. The intention is to build up your CNA programming skills and at the same time educate you about the elements of CNA itself. If you?re an experienced Python programmer, you can devote more attention to the CNA techniques. On the contrary, if you?re a network analyst with less than an excellent background in Python programming, your plan should be to move slowly through the dark woods of data frames and list comprehensions and use your CNA intuition to grasp programming concepts.

About the Book

This book covers construction, exploration, analysis, and visualization of complex networks using NetworkX (a Python library), as well as several other Python modules, and Gephi, an interactive environment for network analysts. The book is not an introduction to Python. I assume that you already know the language, at least at the level of a freshman programming course. The book consists of five parts, each covering specific aspects of complex networks. Each part comes with one or more detailed case studies.

Part I presents an overview of the main Python CNA modules: NetworkX, iGraph, graph-tool, and networkit. It then goes over the construction of very simple networks both programmatically (using NetworkX) and interactively (in Gephi), and it concludes by presenting a network of Wikipedia pages related to complex networks.

In Part II, you?ll look into networks based on explicit relationships (such as social networks and communication networks). This part addresses advanced network construction and measurement techniques. The capstone case study? a network of ?Panama papers?? illustrates possible money-laundering patterns in Central Asia.

Networks based on spatial and temporal co-occurrences? such as semantic and product networks? are the subject of Part III. The third part also explores macroscopic and mesoscopic complex network structure. It paves the way to network-based cultural domain analysis and a marketing study of Sephora cosmetic products.

If you cannot find any direct or indirect relationships between the items, but still would like to build a network of them, the contents of Part IV come to the rescue. You will learn how to find out if items are similar, and you will convert quantitative similarities into network edges. A network of psychological trauma types is one of the outcomes of the fourth part.

The book concludes with Part V: directed networks with plenty of examples, including a network of qualitative adjectives that you could use in computer games or fiction.

When you finish your journey, you?ll be able to identify, sketch (both by hand, in Gephi, and programmatically), transform, analyze, and visualize several types of complex networks. You?ll be able to interpret network measures and structure. The book doesn?t aim to be a comprehensive CNA reference. Many discipline-specific aspects, such as triadic census, exponential random graph models (ERGMs), and network flows, as well as the whole story of network dynamics (evolution and contagion), have been intentionally left uncharted. The bibliography here will take you to more destinations of your choice, whether they be economic networks, web scrapping, or classical social network analysis.

Additional information

Best Sellers Rank

#451,599 in Kindle Store (See Top 100 in Kindle Store) #11 in Graph Theory (Kindle Store) #18 in LANs (Kindle Store) #34 in Software Utilities

Customer Reviews

/* * Fix for UDP-1061. Average customer reviews has a small extra line on hover * https