ComenzarEmpieza gratis

Crea un grafo a partir del DataFrame de pandas

Empecemos creando un grafo a partir de un DataFrame de pandas. En este ejercicio, crearás un nuevo grafo bipartito iterando sobre la lista de aristas (que es un objeto DataFrame).

Para simplificar, en este procedimiento de construcción del grafo, cualquier arista entre un nodo de estudiante y un nodo de foro será la “última” arista (en el tiempo) en la que un estudiante publicó en un foro a lo largo de todo el periodo del conjunto de datos, aunque hay formas de evitar esta limitación.

Además, para acortar el tiempo de ejecución del ejercicio, te proporcionamos una versión submuestreada de la lista de aristas como data. Explórala en la consola de IPython para familiarizarte con ella.

Este ejercicio forma parte del curso

Análisis de redes intermedio en Python

Ver curso

Instrucciones del ejercicio

  • Instancia un nuevo Graph llamado G.
  • Añade nodos de cada una de las particiones. Usa el método .add_nodes_from() para hacerlo. Las dos particiones son 'student' y 'forum'. Para añadir nodos de la partición 'student', por ejemplo, los argumentos de .add_nodes_from() serían data['student'] y bipartite='student'.
  • Añade cada arista junto con la fecha en la que se creó. Para ello, usa el método .add_edge() dentro del bucle, con los argumentos d['student'], d['forum'] y date=d['date'].

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

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():
    ____ 
Editar y ejecutar código