Dynamic Network Communities Detection and Generation - R Package
R package that implements several Algorithms used for evolving network analysis regarding community detection, using a common API.
Communities are calculated for the vertices and edges that change over time, without recalculating communities for the entire graph.
Algorithms use different, selectable, Criterion to evaluate the quality increase of the current community mapping.
Post-processing algorithms can be executed over the results to filter them for presentation without changing neither the graph nor the community mapping.
Currently implemented features are:
Algorithms:
Dynamic Louvain Algorithm
Criterion:
Classical Newman-Girvan, also called Modularity (Modularity)
Post-processing algorithms:
Community Density Optimization
Features planned to be added:
Algorithms:
TILES Community Detection [2]
RDyn generation module for dynamic networks [3]
Criterion:
Balanced Modularity (BalMod)
Post-processing algorithms:
Top N
Order by weight/edgeCount
Implement stand alone User Interfaces
The following are the most important files/directories to be aware in the root of the package source code directory:
inst contains a file named "REFERENCES.bib" that contains entries to referenced work.
man contains the automatically generated help for DynComm available through the R help system.
R is the source directory for R scripts.
src is the source directory for other languages like C++ and Python.
tests will contain, in the future, some automated tests to be performed when the package is built.
LICENSE file describes the license agreement under which this project is shared.
To be able to use this package, the following software must be installed in your system, in the order presented. Search the web for more details on how to install and configure the software on your operating system, if required.
R-4.0.0
(optionally) RStudio 1.2.5042
The latest version of this package (201901.01.0004) was tested in Xubuntu 20.04 64 bit and Windows 7 Ultimate 64 bit.
You can install the stable version of this package from CRAN, if available, using the following command from within your R console:
install.packages("DynComm")
Otherwise, or to get the latest stable version, you need to compile the source code version provided in the root of the package source code directory.
Some additional software and configuration is required to compile and use the source code version of the package.
On Windows operating systems:
rtools40
Add rtools to the path. Check Rtools for details.
On Linux operating systems:
a C++11 compatible compiler and development libraries
The following packages are required to be installed from within R before trying to compile the source code version of the package. Some packages have dependencies of their own that may need fulfilling.
Rcpp (>= 0.12.15)
Rdpack
roxygen2
devtools
The safest route is to download the latest stable source code version file from the root of this project and call the following command from within your R console, replacing the "x" by the correct version number:
install.packages("DynComm_xxxxxx.xx.xxxx.tar.gz", repos = NULL, type = "source")
To get the most recent version, which may not be stable nor functional, you can use the source code of the GitHub master version using the following command from within your R console:
devtools::install_github("softskillsgroup/DynComm-R-package/R-CRAN")
If you get errors about paths, directories or files using Staged Installation (the default), you might have to change "StagedInstall: yes" to "StagedInstall: no" in the DESCRIPTION file in order to be able to compile and install locally.
Users please check either the manual.pdf file in the project repository or the R help system for the latest version of the manual. Beware that documentation in the R help system might be more up to date. R help can be called using one of the following commands from R console.
help("DyComm-package")
or ??"DyComm-package"
Developers please refer to the developer documentation in the R help system using one of the following commands from R console.
help("DyComm-package-dev")
or ??"DyComm-package-dev"
Please read the CONTRIBUTING file.
This project is shared under GNU GPL version 2 or later. Please read the LICENSE file for more details.
This package uses the following work as reference material for the implementation of the algorithms.
Publisher: Springer Vienna
[2]:
Address: Hingham, MA, USA
[3]:
DOI: 10.1093/comnet/cnx016
[4]:
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.