cluseigen: Community structure detection in networks

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/cluseigen.R

Description

Community structure detection in networks based on the leading eigenvector of the community matrix

Usage

1
cluseigen(adj)

Arguments

adj

An adjacency matrix. Should be symmetric with diagonal containing zeros.

Details

The difference between this function and the algorithm described by Newman is that this function can be used on an adjacency matrix with negative elements, which is very common for correlation matrices and other measures of pairwise synchrony of time series.

Value

cluseigen returns a list with one element for each of the splits performed by the clustering algorithm. Each element is a vector with entries corresponding to rows and columns of adj and indicating the module membership of the node, following the split. The last element of the list is the final clustering determined by the algorithm when its halting condition is satisfied. The first element is always a vector of all 1s (corresponding to before any splits are performed).

Author(s)

Lei Zhao, lei.zhao@cau.edu.cn; Daniel Reuman, reuman@ku.edu

References

Gomez S., Jensen P. & Arenas A. (2009). Analysis of community structure in networks of correlated data. Phys Rev E, 80, 016114.

Newman M.E.J. (2006). Finding community structure in networks using the eigenvectors of matrices. Phys Rev E, 74, 036104.

Newman M.E.J. (2006) Modularity and community structure in networks. PNAS 103, 8577-8582.

See Also

clust, modularity, browseVignettes("wsyn")

Examples

1
2
3
4
5
adj<-matrix(0, 10, 10) # create a fake adjacency matrix
adj[lower.tri(adj)]<-runif(10*9/2, -1, 1)
adj<-adj+t(adj)
colnames(adj)<-letters[1:10]
z<-cluseigen(adj)

wsyn documentation built on Jan. 15, 2021, 3:37 p.m.