Kom igångKom igång gratis

Skapa en graf från en pandas DataFrame

Vi börjar med att skapa en graf från en pandas DataFrame. I den här övningen skapar du en ny bipartit graf genom att iterera över kantlistan, som är ett DataFrame-objekt.

För enkelhetens skull innebär den här grafkonstruktionsmetoden att varje kant mellan en student och en forumnod representerar den sista kanten (i tid) som en student postade till ett forum under hela datamängdens tidsperiod – men det finns sätt att hantera detta annorlunda.

För att förkorta körningstiden har vi dessutom tillhandahållit en nedsamplad version av kantlistan som data. Utforska den i IPython Shell för att bekanta dig med strukturen.

Den här övningen är en del av kursen

Nätverksanalys i Python – fortsättningskurs

Visa kurs

Övningsinstruktioner

  • Skapa en ny graf och kalla den G.
  • Lägg till noder från vardera partitionen. Använd metoden .add_nodes_from() för detta. De två partitionerna är 'student' och 'forum'. För att lägga till noder från partitionen 'student' är argumenten till .add_nodes_from() exempelvis data['student'] och bipartite='student'.
  • Lägg till varje kant tillsammans med det datum då kanten skapades. Använd metoden .add_edge() inuti loopen med argumenten d['student'], d['forum'] och date=d['date'].

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

import networkx as nx

# Instantiate a new Graph: G
G = ____

# Add nodes from each of the partitions
____
____

# Add in each edge along with the date the edge was created
for r, d in data.iterrows():
    ____ 
Redigera och kör kod