Crear nodelist
Ahora vas a practicar cómo convertir grafos a su representación en pandas. Si has hecho alguno de los cursos de pandas de DataCamp, sabrás que existe el método DataFrame.to_csv('filename.csv') que te permite guardarlo como un archivo CSV, que es legible para humanos. La idea principal que queremos que te lleves es el proceso de convertir un grafo en una lista de registros.
Empieza recordando la estructura de datos del grafo llamando a list(G.nodes(data=True))[0] en la IPython Shell para examinar un nodo del grafo.
Este ejercicio forma parte del curso
Análisis de redes intermedio en Python
Instrucciones del ejercicio
- Inicializa una lista de nodos vacía llamada
nodelist. - Usa un bucle
forpara iterar por los nodos deG_people. Dentro del bucle:- Actualiza el diccionario
nodeinfousando el método.update()condcomo argumento. - Añade el diccionario
nodeinfoanodelist.
- Actualiza el diccionario
- Crea un DataFrame de pandas de la nodelist llamado
node_dfusando la funciónpd.DataFrame().
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Initialize a list to store each edge as a record: nodelist
nodelist = ____
for n, d in G_people.nodes(data=True):
# nodeinfo stores one "record" of data as a dict
nodeinfo = {'person': n}
# Update the nodeinfo dictionary
____
# Append the nodeinfo to the node list
____
# Create a pandas DataFrame of the nodelist: node_df
node_df = ____
print(node_df.head())