commkern
Analysis of network community objects with applications to neuroimaging data
Science Score: 10.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
✓Committers with academic emails
3 of 4 committers (75.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.6%) to scientific vocabulary
Repository
Analysis of network community objects with applications to neuroimaging data
Basic Info
Statistics
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
CommKern: Analysis of Network Community Structures 
An R package for implementing the hierarchical multimodal spinglass (HMS) algorithm and semiparametric kernel machine methods, with specific applications to neuroimaging data. The HMS algorithm allows for multimodal inputs and creates a hierarchical structure of nested communities through modification of the spinglass algorithm first proposed in a 2006 paper by Reichardt and Bornholdt. The combined flexibility of specifying the maximum possible number of communities a priori (as opposed to an exact number), allowing for more than one source of information in the algorithm, and creation of a nested, hierarchical structure of communities addresses many of the limitations that exist within other community detection algorithms when applied to neuroimaging data. The semiparametric kernel machine methods can then be used to conduct statistical inference to understand if the partitioning of the network nodes to communities is associated with an outcome (whether binary or continuous) while controlling for potential confounders. Extrinsic or intrinsic cluster evaluation metrics have been provided in the package but the kernel approach is flexible enough for the end user to specify their own distance-based metric.
Learn more about CommKern
The community detection algorithm and semiparametric kernel machine methods were developed as part of Alexandria Jensen's PhD dissertation work.
Vignettes
There is one vignette included with the package, for now. Additional details will be added to this vignette.
r
vignette('CommKern', package = 'CommKern')
Additional vignettes may also be authored soon.
Installation
You can install CommKern from GitHub. This will require you to have devtools installed, and, if you are using Windows, you'll need Rtools installed as well.
library(devtools)
install_github("aljensen89/CommKern", build_vignettes = TRUE)
Hierarchical Multimodal Spinglass (HMS) Algorithm
Details of the HMS algorithm can be found in the vignette. Specific application to brain connectivity data will be briefly summarized here. Starting from a common brain atlas (e.g., Automated Anatomical Labeling (AAL), Harvard-Oxford (HO), Craddock 200 (CC200), etc.), adjacency matrices representing functional and structural connectivity are derived from the correlation between resting state functional MRI (rs-FMRI) blood oxygen level dependent (BOLD) time series or the number of white matter fiber tracks computed from diffusion tensor MRI, respectively. Previous studies have observed that functional connectivity can be detected between brain regions that lack a direct structural connection. However, the propensity for two areas to interact on a functional level has been shown to vary in proportion to their structural connectivity, leading to the widely held assumption that functional configurations are assumed to be a reflection of underlying structural linkages. As such, we have utilized the multimodal aspect to the HMS algorithm to create structurally-informed functional connectivity communities.

However, the flexibility of the HMS algorithm does not require either brain network data or multiple inputs. In his 2010 paper, Fortunato showed that the spinglass algorithm is both precise and accurate at recovering community structures but, due its computational complexity, should not be used on networks that exceed several thousand nodes. The HMS algorithm is flexible enough so that its hierarchical and/or multimodal aspects can be suppressed. We recommend that the end user find a balance between computation time and algorithmic specifications in all applications, paying special attention when applying to large networks.
Semiparametric Kernel Machine Methods
Details of the semiparametric kernel machine methods can be found in the vignette. Bringing the partitioning of nodes to communities (via the HMS algorithm or another community detection algorithm, if desired) into a format for analysis using a distance-based kernel will be briefly overviewed here. For group-level network data, a community detection algorithm is run, providing the clustering of nodes to communities. From there, a variety of cluster evaluation metrics can be chosen. Extrinsic metrics require some form of ground truth labeling; however, in neuroimaging, a ground truth is not available. For the appropriate extrinsic metrics, a harmonic mean is calculated such that for each pair of partitions A and B, each takes a turn being the ground truth label. Intrinsic metrics, on the other hand, do not require a ground truth labeling. Within this package, we utilize the Hamiltonian value from the HMS algorithm. Once the metric has been applied to the set of network community data, it is ready for input into the semiparametric kernel machine methods. Options are available for both a binary and continuous outcome of interest and for a fully nonparametric or semiparametric approach, depending on whether the end user wishes to include other covariates of interest.

Owner
- Name: Alex Jensen
- Login: aljensen89
- Kind: user
- Location: Colorado, USA
- Company: Stanford University
- Repositories: 2
- Profile: https://github.com/aljensen89
Biostatistician
GitHub Events
Total
Last Year
Committers
Last synced: over 3 years ago
All Time
- Total Commits: 342
- Total Committers: 4
- Avg Commits per committer: 85.5
- Development Distribution Score (DDS): 0.518
Top Committers
| Name | Commits | |
|---|---|---|
| Alex Jensen | a****n@u****u | 165 |
| Peter DeWitt | p****t@c****u | 140 |
| AJensen | a****n@c****u | 36 |
| Peter DeWitt | d****e@u****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 17
- Total pull requests: 1
- Average time to close issues: 20 days
- Average time to close pull requests: 1 day
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.94
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- dewittpe (17)
Pull Request Authors
- dewittpe (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- cran 264 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
- Total maintainers: 1
cran.r-project.org: CommKern
Network-Based Communities and Kernel Machine Methods
- Homepage: https://github.com/aljensen89/CommKern
- Documentation: http://cran.r-project.org/web/packages/CommKern/CommKern.pdf
- License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
-
Latest release: 1.0.1
published over 3 years ago
Rankings
Maintainers (1)
Dependencies
- R >= 4.0.0 depends
- Matrix * imports
- RColorBrewer * imports
- dplyr * imports
- ggnewscale * imports
- ggplot2 * imports
- gridExtra * imports
- magrittr * imports
- mathjaxr * imports
- qwraps2 * imports
- reshape2 * imports
- rlang * imports
- stats * imports
- stringr * imports
- tidyr * imports
- MNS * suggests
- R.matlab * suggests
- ape * suggests
- aricode * suggests
- data.tree * suggests
- dendextend * suggests
- knitr * suggests
- matrixcalc * suggests
- networkD3 * suggests
- pheatmap * suggests
- reshape * suggests
- rmarkdown * suggests
- treemap * suggests