Penyaring waktu pada edge
Sekarang Anda akan berlatih memfilter graf menggunakan sebuah kondisi yang diterapkan pada edge. Ini akan membantu Anda berlatih dan menjadi terbiasa dengan pemahaman list yang berisi kondisi.
Sebagai bantuan, ingat bahwa Anda dapat mengimpor objek datetime dari modul datetime. Pada graf, metadata memiliki kunci date yang dipasangkan dengan objek datetime sebagai nilainya.
Latihan ini merupakan bagian dari kursus
Analisis Jaringan Menengah di Python
Instruksi latihan
- Buat instance graf baru bernama
G_sub. - Tambahkan node dari graf asli (termasuk metadata node), menggunakan metode
.add_nodes_from(). - Tambahkan edge menggunakan pemahaman list dengan satu kondisi pada tanggal edge, yaitu tanggal edge lebih awal daripada 2004-05-16. Untuk melakukannya:
- Gunakan metode
.add_edges_from()dengan pemahaman list sebagai argumennya. - Ekspresi keluaran dari pemahaman list adalah
(u, v, d). Iterasikan semua edge dariGdan periksa apakahd['date']kurang daridatetime(2004, 5, 16).
- Gunakan metode
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
import networkx as nx
from datetime import datetime
# Instantiate a new graph: G_sub
G_sub = ____
# Add nodes from the original graph
____
# Add edges using a list comprehension with one conditional on the edge dates, that the date of the edge is earlier than 2004-05-16.
G_sub.____([(____, ____, ____) for u, v, d in G.edges(data=True) if d['____'] < ____(____,____,____)])