開始使用免費開始

為邊指定權重

你可以為圖中的邊加入權重(weight),通常用來表示邊的「強度」。在 NetworkX 中,權重是由中繼資料(metadata)字典裡的 'weight' 鍵來表示。

在開始練習前,請先在 IPython Shell 存取 T 的中繼資料字典並探索它,例如執行 T.edges[1, 10],接著再執行 T.edges[10, 1]。注意目前只有一個欄位;接下來你要新增另一個名為 'weight' 的欄位。

本練習屬於課程

Python 網路分析入門

檢視課程

練習說明

  • T 中節點 110 之間那條邊的 'weight' 屬性設為 2。你可以參考以下範本設定邊的屬性:network_name.edges[node1, node2]['attribute'] = value。這裡的 'attribute''weight'
  • 將所有涉及節點 293 的邊,其權重都設為 1.1。作法如下:
    • 使用 for 迴圈,走訪 T 的所有邊,且包含 metadata
    • 如果 293 出現在節點清單 [u, v] 中:
      • uv 之間那條邊的權重設為 1.1

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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
編輯並執行程式碼