View source: R/NormalizedLaplacian.R
NormalizedLaplacian | R Documentation |
A convenience function to create NormalizedLaplacian S4 objects, which are useful for finding the normalized Laplacian of the adjacency matrix of a graph.
NormalizedLaplacian(A) ## S4 method for signature 'NormalizedLaplacian,sparseMatrix' transform(iform, A) ## S4 method for signature 'NormalizedLaplacian,sparseMatrix' inverse_transform(iform, A)
A |
A matrix to transform. |
iform |
An Invertiform object describing the transformation. |
We define the normalized Laplacian L(A) of an n by n graph adjacency matrix A as
L[ij] = A[ij] / sqrt(d^out[i] d^in[j])
where
d^out[i] = sum_j abs(A[ij])
and
d^in[j] = sum_i abs(A[ij]).
When A[ij] denotes the present of an edge from node i to node j, which is fairly standard notation, d^out[i] denotes the (absolute) out-degree of node i and d^in[j] denotes the (absolute) in-degree of node j.
Note that this documentation renders most clearly at https://rohelab.github.io/invertiforms/.
NormalizedLaplacian()
creates a NormalizedLaplacian object.
transform()
returns the transformed matrix,
typically as a Matrix.
inverse_transform()
returns the inverse transformed matrix,
typically as a Matrix.
library(igraph) library(igraphdata) data("karate", package = "igraphdata") A <- get.adjacency(karate) iform <- NormalizedLaplacian(A) L <- transform(iform, A) A_recovered <- inverse_transform(iform, L) all.equal(A, A_recovered)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.