1. Nauka
  2. /
  3. Kursy
  4. /
  5. Wprowadzenie do analizy sieci w Pythonie

Connected

ćwiczenie

Identyfikowanie relacji trójkątnych

Teraz, gdy wiesz już, czym są kliki, czas wykorzystać tę wiedzę do znajdowania struktur w sieci. Zaczniesz od trójkątów – to najprostsza złożona klika. Napiszemy kilka funkcji; te ćwiczenia przeprowadzą cię przez podstawową logikę algorytmów sieciowych.

W sieci Twitterowej każdy węzeł ma przypisaną etykietę 'occupation', która określa zawód użytkownika – może to być celebrity, politician lub scientist. Jednym z możliwych zastosowań algorytmów wyszukiwania trójkątów jest sprawdzenie, czy użytkownicy o podobnych zawodach częściej tworzą kliki.

Instrukcje

100 XP
  • Zaimportuj combinations z biblioteki itertools.
  • Napisz funkcję is_in_triangle(), która przyjmuje dwa parametry – G i n – i sprawdza, czy dany węzeł należy do relacji trójkątnej.
    • combinations(iterable, n) zwraca kombinacje rozmiaru n z iterable. Przyda się tutaj, ponieważ potrzebujesz kombinacji rozmiaru 2 z list(G.neighbors(n)).
    • Aby sprawdzić, czy między dwoma węzłami istnieje krawędź, użyj metody .has_edge(node1, node2). Jeśli krawędź istnieje, dany węzeł należy do relacji trójkątnej – zwróć wtedy True.