From online social networks such as Facebook and Twitter to transportation networks such as bike sharing systems, networks are everywhere—and knowing how to analyze them will open up a new world of possibilities for you as a data scientist. This course will equip you with the skills to analyze, visualize, and make sense of networks. You'll apply the concepts you learn to real-world network data using the powerful NetworkX library. With the knowledge gained in this course, you'll develop your network thinking skills and be able to look at your data with a fresh perspective.
Introduction to networksFree
In this chapter, you'll be introduced to fundamental concepts in network analytics while exploring a real-world Twitter network dataset. You'll also learn about NetworkX, a library that allows you to manipulate, analyze, and model graph data. You'll learn about the different types of graphs and how to rationally visualize them.Introduction to Networks50 xpWhat is a network?50 xpBasics of NetworkX API, using Twitter network50 xpBasic drawing of a network using NetworkX100 xpQueries on a graph100 xpTypes of graphs50 xpChecking the un/directed status of a graph50 xpSpecifying a weight on edges100 xpChecking whether there are self-loops in the graph100 xpNetwork visualization50 xpVisualizing using Matrix plots100 xpVisualizing using Circos plots100 xpVisualizing using Arc plots100 xp
You'll learn about ways to identify nodes that are important in a network. In doing so, you'll be introduced to more advanced concepts in network analysis as well as the basics of path-finding algorithms. The chapter concludes with a deep dive into the Twitter network dataset which will reinforce the concepts you've learned, such as degree centrality and betweenness centrality.Degree centrality50 xpCompute number of neighbors for each node100 xpCompute degree distribution100 xpDegree centrality distribution100 xpGraph algorithms50 xpShortest Path I100 xpShortest Path II100 xpShortest Path III100 xpBetweenness centrality50 xpNetworkX betweenness centrality on a social network100 xpDeep dive - Twitter network100 xpDeep dive - Twitter network part II100 xp
This chapter is all about finding interesting structures within network data. You'll learn about essential concepts such as cliques, communities, and subgraphs, which will leverage all of the skills you acquired in Chapter 2. By the end of this chapter, you'll be ready to apply the concepts you've learned to a real-world case study.
Bringing it all together
In this final chapter of the course, you'll consolidate everything you've learned through an in-depth case study of GitHub collaborator network data. This is a great example of real-world social network data, and your newly acquired skills will be fully tested. By the end of this chapter, you'll have developed your very own recommendation system to connect GitHub users who should collaborate together.Case study!50 xpCharacterizing the network (I)50 xpCharacterizing the network (II)100 xpCharacterizing the network (III)100 xpCase study part II: Visualization50 xpMatrixPlot100 xpArcPlot100 xpCircosPlot100 xpCase study part III: Cliques50 xpFinding cliques (I)100 xpFinding cliques (II)100 xpCase Study Part IV: Final Tasks50 xpFinding important collaborators100 xpCharacterizing editing communities100 xpRecommending co-editors who have yet to edit together100 xpFinal thoughts50 xp
Eric MaSee More
Data Carpentry instructor and author of nxviz package
Eric uses code to solve big biological data problems at MIT. His tools of choice are: deep learning, network analysis, non-parametric and Bayesian statistics. He has domain expertise in the life sciences: molecular biology, microbiology, genetics and genomics, and a bit of ecology. He has given workshops on Network Analysis at PyCon, PyData, ODSC and beyond!