IntegMultiReg

Integrative Bayesian Multiple Regression for Multi-Platform Biomarkers.

IntegMultiReg implements the integrative multi-regression (IMR) model of Chekouo, Stingo, Doecke and Do (2017, Biometrics) and extends it from time-to-event outcomes to continuous (Gaussian) and binary (probit) outcomes.

Given several molecular platforms measured on overlapping but partially missing sets of subjects, IMR partitions subjects into the availability subgroups of a Venn diagram, fits one regression per subgroup, and shares information across availability subgroups through

so that no subject with partially observed platforms is discarded and the same biomarkers tend to be selected across availability subgroups.

Installation

The package contains C code that links against the GNU Scientific Library (GSL), which must be installed first:

Once available on CRAN, install the package with:

install.packages("IntegMultiReg")

Alternatively, install a local source tarball:

install.packages("IntegMultiReg_0.1.0.tar.gz", repos = NULL, type = "source")

The CRAN checking tools checkbashisms and qpdf are not runtime dependencies. Package users do not need them. Maintainers running R CMD check --as-cran locally can install them with brew install checkbashisms qpdf on macOS or sudo apt-get install devscripts qpdf on Debian/Ubuntu.

Quick start

library(IntegMultiReg)
data("simIMR")

fit <- imr(
  platform_data_list = simIMR$platforms,
  outcome            = simIMR$outcome.binary,
  cov                = simIMR$covariates,
  type_outcome       = "binary",
  nu                 = c(-4, -3, -4),
  sample_mcmc        = c(2000, 1000),
  ssize              = 30,
  seed               = 1
)

fit                       # short summary
summary(fit)              # selected biomarkers per platform
coef(fit)                 # per-platform mPIP matrices
plot(fit, type = "selection")
plot_top_features(fit)    # ranked biomarker bar chart
predict(fit, newdata = simIMR$platforms[1:2], covariates = simIMR$covariates)
cv_imr(fit)               # fold-split predictive assessment using fitted samples

Real-data example

kircIMR is a reduced public UCSC Xena TCGA-KIRC survival example aligned with the Biometrics kidney cancer case study: mRNA expression, miRNA expression, DNA methylation, clinical covariates and right-censored survival. It is derived from public UCSC Xena TCGA-KIRC sampleMap files, not from controlled-access TCGA/GDC files, and contains only a reduced Cox-screened feature panel.

The package replaces TCGA barcodes with package-internal IDs such as KIRC001 and does not distribute a barcode mapping. Users should not attempt participant re-identification or linkage to external resources.

data("kircIMR")
sapply(kircIMR$platforms, dim)
kircIMR$model_subgroup_sizes

kirc_fit <- imr(
  kircIMR$platforms,
  kircIMR$outcome.survival,
  cov = kircIMR$covariates,
  type_outcome = "right.censored",
  nu = c(-4, -3, -4),
  sample_mcmc = c(4000, 1000),
  ssize = 30,
  seed = 1
)

See the package vignette vignette("IntegMultiReg") for a complete walk-through.

Reference

Chekouo T, Stingo FC, Doecke JD, Do K-A (2017). “A Bayesian Integrative Approach for Multi-Platform Genomic Data: A Kidney Cancer Case Study.” Biometrics, 73(2), 615–624. https://doi.org/10.1111/biom.12587

When using kircIMR, please also acknowledge TCGA, the National Cancer Institute Genomic Data Commons, and UCSC Xena as the public data sources.