Introduction au jeu de données

Analyse de réseaux intermédiaire en Python

Eric Ma

Data Carpentry instructor and author of nxviz package

Présentation du jeu de données et de l’étude de cas

  • Jeu de données de publications sur un forum universitaire, 6 mois
  • Partitions de nœuds : étudiants, forums
  • Activités du chapitre :
    • Construire un graphe à partir d’un DataFrame pandas
    • Calculer des projections unipartites d’un graphe bipartite
    • Visualisation
    • Filtrage et analyse de séries temporelles
  • Rappel des fonctions déjà vues
Analyse de réseaux intermédiaire en Python

Graphes depuis des DataFrames

df
   customers    products
0  customerA    product1
1  customerB    product2
...
G = nx.Graph()

G.add_nodes_from(df['products'], bipartite='products') G.add_nodes_from(df['customers'], bipartite='customers')
list(G.nodes())
['product1', 'customerC', 'product2', 'customerB', 'customerA']
list(G.edges())
[]
Analyse de réseaux intermédiaire en Python

Graphes depuis des DataFrames

G.add_edges_from(zip(df['customers'], df['products']))

list(G.edges())
[('product1', 'customerC'), ('product1', 'customerA'), 
    ('customerC', 'product2'), ('product2', 'customerB')]
Analyse de réseaux intermédiaire en Python

Projections bipartites

cust_nodes = [n for n in G.nodes() if G.nodes[n]
                 ['bipartite'] == 'customers']

prod_nodes = [n for n in G.nodes() if G.nodes[n] ['bipartite'] == 'products']
prodG = nx.bipartite.projected_graph(G, nodes=prod_nodes) custG = nx.bipartite.projected_graph(G, nodes=cust_nodes)
list(prodG.nodes())
['product1', 'product2']
list(custG.nodes())
['customerC', 'customerB', 'customerA']
Analyse de réseaux intermédiaire en Python

Passons à la pratique !

Analyse de réseaux intermédiaire en Python

Preparing Video For Download...