НачатьНачать бесплатно

Создание графа из DataFrame pandas

Начнём с создания графа из DataFrame pandas. В этом упражнении вы построите новый двудольный граф, перебирая список рёбер (объект DataFrame).

Для простоты в данной процедуре построения графа любое ребро между узлом студента и узлом форума будет считаться «последним» ребром (по времени) — то есть последним сообщением, которое студент опубликовал на форуме за весь период набора данных. Существуют и другие подходы, но здесь мы ограничимся этим.

Кроме того, чтобы сократить время выполнения упражнения, мы подготовили уменьшенную выборку списка рёбер в виде переменной data. Изучите её в IPython Shell, чтобы разобраться со структурой данных.

Это упражнение является частью курса

Средний уровень сетевого анализа на Python

Посмотреть курс

Инструкции к упражнению

  • Создайте новый граф и назовите его G.
  • Добавьте узлы из каждого раздела с помощью метода .add_nodes_from(). Два раздела — это 'student' и 'forum'. Например, чтобы добавить узлы из раздела 'student', передайте в .add_nodes_from() аргументы data['student'] и bipartite='student'.
  • Добавьте каждое ребро вместе с датой его создания. Для этого вызовите метод .add_edge() внутри цикла, передав аргументы d['student'], d['forum'] и date=d['date'].

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

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():
    ____ 
Редактировать и запускать код