1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Intermediate Network Analysis in Python

Connected

Cvičení

Najdi nejpopulárnější fóra den po dni: II

Skvělá práce v předchozím cvičení – napsal/a jsi kód, který vytvořil seznam grafů časové řady. Teď ho dokončíš: zjistíš, kolik fór dosáhlo skóre nejpopulárnějšího fóra v jednotlivých dnech!

Jednou z věcí, které tu budeš dělat, je "slovníkové porozumění" pro filtrování slovníku. Je velmi podobné listovému porozumění pro filtrování seznamu, jen syntaxe vypadá takto: {key: val for key, val in dict.items() if ...}. Měj to na paměti!

Pokyny

100 XP
  • Získej centralitu stupňů pomocí nx.bipartite.degree_centrality() s argumenty G_sub a forum_nodes.
  • Filtruj slovník tak, aby obsahoval pouze centralitu stupňů pro fóra. Pár key: val ve výstupním výrazu by měl být n, dc. Iteruj přes dc.items() a zkontroluj, zda je n v forum_nodes.
  • Urči nejpopulárnější fórum (nebo fóra) – musí mít nejvyšší centralitu stupňů (max(forum_dcs.values())) a hodnota DC nesmí být nulová.
  • Přidej nejvyšší hodnoty dc do highest_dcs.
  • Vytvoř grafy!
    • Pro první graf použij listové porozumění, ve kterém iteruješ přes most_popular_forums (což je seznam seznamů) s forums jako iterační proměnnou. Výstupní výraz by měl být počet nejpopulárnějších fór, vypočítaný pomocí len().
    • Pro druhý graf použij highest_dcs a plt.plot() k vizualizaci nejvyššího skóre centrality stupňů.