PluMA: Plugin-Based Microbiome Analysis

Plugin Pool

These plugins have been tested and can run with PluMA.  The source language has been specified in parentheses.  You can download just the ones you wish to use.  The easiest way to install them is to place them in the plugins/ directory of the PluMA source tree, however you can install them elsewhere by setting the environment variable PLUMA_PLUGIN_PATH.

Name Short Description Language
AffinityPropagation Affinity Propagation (Frey and Dueck, 2007) (Python) Python
ATria Ablatio Triadum (ATria) Centrality (Cickovski et al, 2017) C++
AutoCorrelation Autocorrelation Function Estimate R
BiasedPageRank Edge-Weighted Personalized Page Rank (Xie et al, 2015) Python
Binomial Binomial Deviance (McArdle and Anderson, 2001) R
Bray Bray-Curtis (Bray and Curtis, 1957) R
CalcMeanStd Calculates Mean and Standard Deviation Python
Canberra Canberra Distance (Lance and Williams, 1966) R
Chao Chao's Method (Chao, 2005) R
Classify Phylogenetic OTU Classifier Python
ClusterCSV2NOA Convert CSV File Of Clusters to NOA Python
Clusterize Remove Edges Between Nodes in Different Clusters Python
CountTableProcessing Converts Mothur Counts To Abundance CSV R
CrossCorrelation Time-Series Cross-Correlation Values R
CSV2GML CSV To GML Converter Python
CSVMapRange Map Range of One CSV File To Another (Useful in Multi-Omics) Python
CSVNeg2Zero Change Negative Edges To Zero Python
CSVNormalize CSV Normalization Python
CSVPad CSV Padding Python
CSVScale Scale CSV Values to Have a Median of One Python
CSVTranspose Transpose a Matrix in a CSV File Python
CSVZero2Min Change All Zeroes in a CSV to the Minimum Value Python
Cytoscape Cytoscape Visualizer (Shannon et al, 2003) (Generated by PluGen) C++
CytoViz Cytoscape Visualizer Perl
Degree Degree Centrality (Freeman, 1979) C++
Detrend Detrend (Least-Squares Fit, Time Series Data) R
DickeyFuller Dickey-Fuller Test, Time Series Data (Said and Dickey, 1984) R
DistanceCorrelation Distance Correlation (Szekely, 2005) R
EM K-Group Community Detection (Newman and Clauset, 2015) C++
EuclideanDistance Euclidean Distance R
Exponential Exponential Centality (Benzi and Klymko, 2013) Python
Gower Gower Index (Gower, 1971) R
GPUATria GPUATria (ATria, on the GPU) CUDA
Horn Horn's Overlap Index (Horn, 1966) R
InverseSimpson Inverse Simpson Diversity Index Python
Jaccard Jaccard Index (Jaccard, 1912) R
Kendall Kendall Correlation (Kendall, 1970) R
Kulczynski Kulczynski Similarity (Kulczynski, 1927) R
LSA Local Similarity Analysis (Ruan, 2006) Python
MakeCliques Make a Network of Cliques (Python) Python
MakeSynthetic Make a Synthetic Network Python
Manhattan Manhattan Distance R
Map2Positive Map All Edges To Positive Range Python
MCL Markov Clustering (van Dongen, 2000) R
MIC Maximal Information Coefficient (Reshef, 2011) R
MetaBAT MetaBAT (Kang et al, 2015) (Generated by PluGen) C++
ModularityMaximization Modularity Maximization Algorithm For Clustering Level Python
Morisita Morisita Overlap (Morisita, 1959) R
Mothur Mothur (Schloss, 2009) (Generated by PluGen) C++
Mountford Mountford Dissimilariy Index (Mountford, 1962) R
NetworkViz Network Visualizer (Generates Multiple Cytoscape Input Files) Python
NormScoreTransform Normal Probability Values R
PageRank Page Rank Centrality (Page, 1999) Python
PCL2CSV PCL To CSV (File Conversion) Python
Pearson Pearson Correlation (Pearson, 1896) R
Prestige Katz Prestige (Katz, 1953) C++
PyATria ATria, in Python Python
QGraph QGraph Visualizer R
Raup Raup-Crick (Raup and Crick, 1979) R
ReactionPathway ReactionPathway (Statistical Analysis of Metabolite Network and Reaction Pathway Data) Python
RemoveNegative Remove Negative Edges Python
SIMLR SIMLR (Wang et al, 2017) R
Spearman Spearman Correlation (Spearman, 1904) R
Spectral Spectral Clustering (Meila and Shi, 2001) Python
Variance Variance Calculator Python




Our lightweight computational backend is implemented in C++ and dynamically loads and sequentially executes user-specified plugins to form a complete pipeline. A plaintext configuration file contains all plugins for the pipeline. Plugins may be written in different languages, including Python, CUDA, C++, R, and Perl. We have also supplied an example pipeline below, which includes two configuration file samples, and instructions on how to compile and run PluMA with the help of SCons (which can be downloaded from Scons) Click below to download the PluMA tar ball or user guide, or to access any other resources.