Note
This page is a draft and under revision.
Note
This function is not yet supported.
Computes the singular values and left and right singular vectors of the adjacency matrix representing a directed Graph.
Parameters:
A Snap.py graph or a network.
The number of singular values/vectors to compute
Computed singular values stored as a vector of floats
Computed left singular vectors stored as a vector of vectors of floats
Computed right singular vectors stored as a vector of vectors of floats
Return value:
The following example shows how to fetch the in-degrees for nodes in TNGraph, TUNGraph, and TNEANet:
import snap
Graph = snap.GenRndGnm(snap.PNGraph, 100, 1000)
SngVecs = 5
SngValV = snap.TFltV()
LeftSV = snap.TVec(snap.TFltV())
RightSV = snap.TVec(snap.TFltV())
snap.GetSngVec(Graph, SngVecs, SngValV, LeftSV, RightSV)
for value in SngValV:
print("Singular value: %f" % value)
for vector in LeftSV:
for value in vector:
print("Left Singular Vector Value %f" % value)
for vector in RightSV:
for value in vector:
print("Right Singular Vector Value %f" % value)
Graph = snap.GenRndGnm(snap.PUNGraph, 100, 1000)
SngVecs = 5
SngValV = snap.TFltV()
LeftSV = snap.TVec(snap.TFltV())
RightSV = snap.TVec(snap.TFltV())
snap.GetSngVec(Graph, SngVecs, SngValV, LeftSV, RightSV)
for value in SngValV:
print("Singular value: %f" % value)
for vector in LeftSV:
for value in vector:
print("Left Singular Vector Value %f" % value)
for vector in RightSV:
for value in vector:
print("Right Singular Vector Value %f" % value)
Graph = snap.GenRndGnm(snap.PNEANet, 100, 1000)
SngVecs = 5
SngValV = snap.TFltV()
LeftSV = snap.TVec(snap.TFltV())
RightSV = snap.TVec(snap.TFltV())
snap.GetSngVec(Graph, SngVecs, SngValV, LeftSV, RightSV)
for value in SngValV:
print("Singular value: %f" % value)
for vector in LeftSV:
for value in vector:
print("Left Singular Vector Value %f" % value)
for vector in RightSV:
for value in vector:
print("Right Singular Vector Value %f" % value)