ComenzarEmpieza gratis

Especificar un peso en las aristas

Se pueden añadir pesos a las aristas de un grafo, normalmente para indicar la "fuerza" de una arista. En NetworkX, el peso se indica con la clave 'weight' en el diccionario de metadatos.

Antes de intentar el ejercicio, usa la shell de IPython para acceder al diccionario de metadatos de T y explorarlo; por ejemplo, ejecuta los comandos T.edges[1, 10] y luego T.edges[10, 1]. Observa cómo solo hay un campo, y ahora vas a añadir otro campo llamado 'weight'.

Este ejercicio forma parte del curso

Introducción al análisis de redes en Python

Ver curso

Instrucciones del ejercicio

  • Establece el atributo 'weight' de la arista entre los nodos 1 y 10 de T igual a 2. Puedes usar esta plantilla para establecer un atributo de una arista: network_name.edges[node1, node2]['attribute'] = value. Aquí, el 'attribute' es 'weight'.
  • Establece el peso de cada arista que involucre al nodo 293 igual a 1.1. Para hacerlo:
    • Con un bucle for, itera por todas las aristas de T, incluyendo los metadata.
    • Si 293 está en la lista de nodos [u, v]:
      • Establece el peso de la arista entre u y v en 1.1.

Ejercicio interactivo práctico

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

# Set the weight of the edge
____ = 2

# Iterate over all the edges (with metadata)
for u, v, d in ____:

    # Check if node 293 is involved
    if 293 in ____:

        # Set the weight to 1.1
        ____ = 1.1
Editar y ejecutar código