Introduction to Network Analysis (Example)
In this tutorial, you’ll learn what a network is, what a graph is, and the different networks that exist.
The table of content is structured as follows:
Let’s dive into it!
Who am I and why networks are important
I am Dr. Pierre Olivier, a doctor in Data Science applied to Oceanography. In my work, I use networks to represent relationships between organisms in the sea. This blog post will be the first in an exciting series on networks and graphs!
Networks are representations of entities and the interactions between those entities. All networks are composed of nodes that can represent people, places, organizations, etc., and links representing relationships between those nodes, such as friendships, routes, transactions, and others. You may not realize it yet, but networks are all around us!
For instance, networks are a central part of how we can track the spread of pandemics. The spread can be represented as a list of nodes and connections, which can then be condensed into a simplified graph. This allows for an easier analysis using the principles of graph theory.
Several networks may have the same graph representation, although they originate from very different contexts. See how two different networks are visualized similarly below.
Structure and dynamics — two different approaches
There exist two main ways to look at a network. Structural analyses look at the structure of the network: (i) which are the nodes, (ii) how are they connected to one another? One can think of the structure as the architecture of the network.
An easy comparison could be looking at the architecture of the Eiffel Tower, where each rivet represents nodes in a monumental network. Without the right rivet in the right place, the structure would collapse. This type of analysis provides insights into the network’s connectedness, vulnerability, and overall design.
On the other hand, dynamical analysis concerns the network dynamics, such as how information flows from node to node within that network (a.k.a. flow analysis) over time.
In that case, we could think of a network of airports where flight connections connect destinations. In terms of structure, we may observe that some airports, like Amsterdam or Paris, may have a lot more connections with other airports. However, there may be some smaller airports with fewer connections that welcome a disproportionate number of passengers. That is because those smaller airports may be the only connecting points to further destinations. By looking at how passengers travel throughout the network (i.e., the flows of passengers), we may observe that certain connections (i.e., the links) may be a lot more essential than others.
How to represent networks to carry out an analysis? (Example)
Enough theory! How do we set a network? We need to record two types of information: the nodes and the links. Nodes and links can easily be stored inside a squared binary matrix and used for complex mathematical computations.
Matrix rows and columns represent nodes, whereas links lie at the intersection between those rows and columns. The intersection either represents the absence (0s) or the presence (1s) of a relationship.
The matrix above contains the network connections representing who is contacted to whom for help to all. The diagonal contains 0s since it refers to self-contact.
We can already see some patterns emerge. By convention, the matrix follows the from-to relation, going from rows to columns. For instance, Pierre contacts Joachim and Matthias for help, and Joachim sits at the top of the hierarchy providing help.
This type of squared binary matrix is called adjacency matrix. In a matrix representing a network, rows, and columns often contain all nodes. However, nodes may hold different identities (e.g., some nodes being animals, others being their food). Links, as well, may keep several types of information.
First, the links can convey the information of direction. Since the matrix is squared, we can represent reciprocal relationships between row A and column B. For instance, Iif the cell on the second row and fourth column was 1, the relation between Cansu and Joachim would be reciprocal.
Secondly, they can also contain weights representing the amount of information channeled. Identifying such differences may be essential to understand how information flows throughout the network.
Nodes may also hold weights. In one of my research studies, we ascribed weights to the nodes to represent the size of the fish population. Doing so, we could see that classical metrics were under-representing some organisms in the network, simply because those organisms were numerous though having few connections!
In my next tutorial, we will see how to put the theory into practice and compare different networks. We will build our very first network, see how to store the information, and bring it into R. Finally, we will plot it and perform a simple network analysis.
Video, Further Resources & Summary
Not enough for today?! Do you already want to dive right into network analysis with R? Then you should take a look at the remarkable blog of Associate Prof. Katherine Ognyanova.
For even more content, a YouTube video will be added soon.
Working with networks has a lot to do with matrix manipulations and operations. If you want a refresher, you can check those great tutorials on Statistics Globe:
This post has shown what a network is, what a graph is, and that there is not just one type of network. In case you have further questions, you may leave a comment below.
This page was created in collaboration with Dr. Pierre Olivier. You may have a look at Pierre’s author page to read more about his academic background, see his research articles and the other articles he has written for Statistics Globe.
Statistics Globe Newsletter
6 Comments. Leave new
Very informative and simple description of a complex topic. Looking forward to the video
Hello Dr. Hanan,
Thank you very much for the comment and your positive feedback. Glad you like the article.
Best,
Matthias
I second Dr. Hannan’s comments. Thank you.
Hello Petros,
That’s great to hear, thanks for the response!
Best,
Matthias
Amazingly interesting even for a non-mathematical person and about 3 months into learning R. Cleary understood.
Hello Hermann,
thank you very much! Have fun learning R, and if you miss any topics on our website, please let us know!
Best,
Matthias