Calculates the L-Modularity (Newman-type modularity) and the partition of traits that minimizes L-Modularity. Wrapper for using correlations matrices in community detection algorithms from igraph.
Community detection is done by transforming the correlation matrix into a weighted graph and using community detection algorithms on this graph. Default method is optimal but slow. See igraph documentation for other options.
If negative correlations are present, the square of the correlation matrix is used as weights.
Examples
## Not run:# A modular matrix:modules = matrix(c(rep(c(1,0,0), each =5),rep(c(0,1,0), each =5),rep(c(0,0,1), each =5)),15)cor.hypot = CreateHypotMatrix(modules)[[4]]hypot.mask = matrix(as.logical(cor.hypot),15,15)mod.cor = matrix(NA,15,15)mod.cor[ hypot.mask]= runif(length(mod.cor[ hypot.mask]),0.8,0.9)# within-modulesmod.cor[!hypot.mask]= runif(length(mod.cor[!hypot.mask]),0.3,0.4)# between-modulesdiag(mod.cor)=1mod.cor =(mod.cor + t(mod.cor))/2# correlation matrices should be symmetric# requires a custom igraph installation with GLPK installed in the systemLModularity(mod.cor)## End(Not run)
References
Modularity and community structure in networks (2006) M. E. J. Newman, 8577-8582, doi: 10.1073/pnas.0601602103