distances: Distances Between Networks

Description Usage Arguments Details Value Examples

Description

This is a collection of functions computing the distance between two networks.

Usage

1
2
3
4
5
6
7
dist_hamming(x, y, representation = "laplacian")

dist_frobenius(x, y, representation = "laplacian")

dist_spectral(x, y, representation = "laplacian")

dist_root_euclidean(x, y, representation = "laplacian")

Arguments

x

An igraph object or a matrix representing an underlying network.

y

An igraph object or a matrix representing an underlying network. Should have the same number of vertices as x.

representation

A string specifying the desired type of representation, among: "adjacency", "laplacian" [default], "modularity" or "graphon".

Details

Let X be the matrix representation of network x and Y be the matrix representation of network y. The Hamming distance between x and y is given by

\frac{1}{N(N-1)} ∑_{i,j} |X_{ij} - Y_{ij}|,

where N is the number of vertices in networks x and y. The Frobenius distance between x and y is given by

√{∑_{i,j} (X_{ij} - Y_{ij})^2}.

The spectral distance between x and y is given by

√{∑_i (a_i - b_i)^2},

where a and b of the eigenvalues of X and Y, respectively. This distance gives rise to classes of equivalence. Consider the spectral decomposition of X and Y:

X=VAV^{-1}

and

Y = UBU^{-1},

where V and U are the matrices whose colums are the eigenvectors of X and Y, respectively and A and B are the diagonal matrices with elements the eigenvalues of X and Y, respectively. The root-Euclidean distance between x and y is given by

√{∑_i (V √{A} V^{-1} - U √{B} U^{-1})^2}.

Root-Euclidean distance can used only with the laplacian matrix representation.

Value

A scalar measuring the distance between the two input networks.

Examples

1
2
3
4
5
6
g1 <- igraph::sample_gnp(20, 0.1)
g2 <- igraph::sample_gnp(20, 0.2)
dist_hamming(g1, g2, "adjacency")
dist_frobenius(g1, g2, "adjacency")
dist_spectral(g1, g2, "laplacian")
dist_root_euclidean(g1, g2, "laplacian")

ilovato/nevada documentation built on May 30, 2019, 9:47 p.m.