SNAP

1. Cicle de vida

2. Tipologia

4. Llenguatge de programació

Descripció

Stanford Network Analysis Platform (SNAP) és una llibreria de propòsit general per a l’anàlisi de xarxes i mineria de grafs. Està escrit en C ++ i s’escala fàcilment a xarxes amb centenars de milions de nodes i milers de milions d’arestes o connexions. Ofereix la manipulació de manera eficient de grans grafs, càlcul de les propietats estructurals i admet atributs en nodes i vores.

SNAP també està disponible per mitjà de NodeXL, que és una interfície gràfica que integra l’anàlisi de xarxes en Microsoft Office i Excel.

A més, està disponible una interfície de SNAP per a Python, Snap.py, la qual cosa ens proporciona els beneficis de rendiment de SNAP, combinats amb la flexibilitat de Python.

Enllaç al recurs

https://snap.stanford.edu/index.html

Exemples d’ús

El següent exemple mostra com utilitzar la implementació de SNAP per a Python, Snap.py per a la definició d’un graf dirigit amb les seves respectives connexions (s’han numerat les línies per a millorar-ne la lectura):

1     import snap      
2     G1 = snap.TNGraph.New()
3     G1.AddNode(1)
4     G1.AddNode(5)
5     G1.AddNode(12)
6    
7     G1.AddEdge(1,5)
8     G1.AddEdge(5,1)
9     G1.AddEdge(5,12)

Cada línia dona lloc a la definició del graf de la següent manera:

  • A la línia 1 importem la llibreria de
  • La línia 2 és l’encarregada de la inicialització del graf dirigit.
  • Entre les línies 3 i 5 s’afegeixen els nodes del graf, amb identificadors 1, 5 i 12 respectivament.
  • Entre les línies 7 i 9 s’estableixen les relacions (enllaços) entre nodes: de l’1 al 5, del 5 a l’1 i del 5 al 12.

Enllaços relacionats

https://snap.stanford.edu/snappy/doc/index.html