Learn R Programming

GMCM

Fast estimation of Gaussian Mixture Copula Models

The GMCM package (Bilgrau et. al., 2016) offers R functions that perform high-dimensional meta-analysis (Li et. al., 2011) and general unsupervised cluster analysis (Tewari et. al., 2011) using Gaussian Copula Mixture Models in a very fast manner. Online documentation is available here.

Gaussian copula mixture models (GMCMs) are a very flexible alternative to Gaussian mixture models in unsupervised cluster analysis for continuous data where non-Gaussian clusters are present. GMCMs model the ranks of the observed data and are thus invariant to monotone increasing transformations of the data, i.e. they are semi-parametric and only the ordering of the data is important. Alternatively, a special-case of the GMCMs can be used for a novel meta-analysis approach in high-dimensional settings. In this context, the model tries to cluster results which agree and do not agree on statistical evidence into a reproducible and irreproducible group.

The optimization of the complicated likelihood function is difficult, however. GMCM utilizes Rcpp and RcppArmadillo to evaluate the likelihood function quickly and arrive at a parameter estimate using either standard numerical optimization routines or an pseudo EM algorithm.

Additional information, documentation, help, and examples can be found by here or by running ?GMCM in R. The paper [1] is also found as a vignette by vignette("GMCM-JStatSoft"). The core user functions of GMCM are fit.full.GMCM and fit.meta.GMCM.

Installation

The released and tested version of GMCM is available at CRAN (Comprehensive R Archive Network). It can be installed from within R by running

install.packages("GMCM")

If you wish to install the latest version of GMCM directly from the master branch at GitHub, run

#install.packages("remotes")  # Install remotes if needed
remotes::install_github("AEBilgrau/GMCM")

Note, that this version is in development and is likely different from the version at CRAN. As such, it may be unstable. Be sure that you have the package development prerequisites if you wish to install the package from the source.

When installed, run GMCM::runGMCM() to launch a local instance of the GMCM shiny application also available online at shinyapps.io. Run news(package = "GMCM") to view the latest changes of GMCM or visit here.

For previous versions of GMCM, visit the old releases at GitHub or the archive at CRAN.

References

  1. Anders Ellern Bilgrau, Poul Svante Eriksen, Jakob Gulddahl Rasmussen, Hans Erik Johnsen, Karen Dybkaer, Martin Boegsted (2016). GMCM: Unsupervised Clustering and Meta-Analysis Using Gaussian Mixture Copula Models. Journal of Statistical Software, 70(2), 1-23. doi:10.18637/jss.v070.i02

Copy Link

Version

Install

install.packages('GMCM')

Monthly Downloads

360

Version

1.4

License

GPL (>= 2)

Issues

Pull Requests

Stars

Forks

Last Published

November 5th, 2019

Functions in GMCM (1.4)

Uhat

Fast ranking function
goodness.of.fit

Goodness of fit for the general GMCM
freshVsFrozen

Reproducibility between Fresh and Frozen B-cell subtypes
fit.meta.GMCM

Estimate GMCM parameters of the special model
rtheta

Get random parameters for the Gaussian mixture (copula) model
runGMCM

Run the GMCM shiny application
print.theta

Print method for theta class
inv.rho.transform

Transformation of the correlation to real line and its inverse
fit.full.GMCM

Estimate GMCM parameters of the general model
dmvnormal

Multivariate Gaussian density and simulation
is.theta

Check if parameters are valid
summary.theta

Summary method for theta class
plot.theta

Plotting method for "theta" objects
full2meta

Convert between parameter formats
get.IDR

Posterior class probabilities, local, and adjusted IDRs.
inv.logit

Logit and inverse logit transforms
cummean

Cumulative mean values
dgmcm.loglik

Probability, density, and likelihood functions of the Gaussian mixture (copula) model
u133VsExon

Reproducibility between U133 plus 2 and Exon microarrays
inv.tt

Reparametrization of GMCM parameters
EStep

Steps of the EM algorithm for a Gaussian Mixture model
EMAlgorithm

EM algorithm for Gaussian mixture models
choose.theta

Heuristically chosen starting value of theta
SimulateGMCMData

Simulation from Gaussian mixture (copula) models
as.theta

Coerce a list to a theta object
GMCM-package

Fast optimization of Gaussian Mixture Copula Models
classify

Classify observations
PseudoEMAlgorithm

EM-like algorithm for the GMCM
colSds

Row and column standard deviations