In [3]:
import pandas as pd
import networkx as nx
import matplotlib.pyplot as plt
# You do not need this part
%matplotlib inline


We will do two things: first we will use python to compute the descriptive network statistics that we encountered in the lecture.

Second, we will have a quick look at ho to create networks in python artificially.

# Preparation of the dataset¶

This is something that I already did for you, but for the sake of completeness I provide this code as well.

Remember: the vertices in the data correspond to characters in Game of Thrones, the edges are weighted and represent the number of co-occurences of the characters in the book. A co-occurence happens if the names of the characters occured withn within 15 words.

It is always absolutely essential to keep in mind how vertices and edges are defined!

Here we will use data only from the first seven seasons.

In [4]:
G_series_all = nx.read_gml("data/GoT_series_all.gml")
graphs = [G_series_1, G_series_2, G_series_3, G_series_4,
G_series_5, G_series_6, G_series_7]


# Visualize the network¶

This visualization is in itself not really useful...

In [5]:
fig, ax = plt.subplots(figsize=(30,30))
nx.draw(G_series_all, with_labels=True, node_color="#00a3cc", ax=ax)

/Users/claudius/anaconda3/lib/python3.7/site-packages/networkx/drawing/nx_pylab.py:611: MatplotlibDeprecationWarning: isinstance(..., numbers.Number)
if cb.is_numlike(alpha):