MOFSR

Documentation: https://zaoqu-liu.github.io/MOFSR/

Multi-Omics Fusion for Subtype Recognition

MOFSR is a comprehensive R package designed for integrative analysis of multi-omics data to identify disease subtypes and characterize molecular heterogeneity. The package implements 15 state-of-the-art multi-omics clustering algorithms with internal implementations to ensure maximum cross-platform compatibility and reproducibility.

Key Features

Methodological Overview

MOFSR provides a unified interface for multi-omics subtyping through three major analytical paradigms:

Paradigm Algorithms Description
Early Fusion CPCA, MCIA, RGCCA, SGCCA Concatenate or jointly decompose data matrices before clustering
Late Fusion BCC, Late Fusion, PINSPlus Cluster each omics separately, then combine results
Intermediate Fusion SNF, wSNF, CIMLR, NEMO Construct similarity networks and fuse at the network level
Model-Based MOFA, iClusterBayes, IntNMF, LRAcluster Probabilistic or matrix factorization approaches

Installation

From R-Universe (Recommended)

install.packages("MOFSR", repos = "https://zaoqu-liu.r-universe.dev")

From GitHub

# install.packages("remotes")
remotes::install_github("Zaoqu-Liu/MOFSR")

Quick Start

library(MOFSR)

# Prepare multi-omics data (features × samples)
data_list <- list(
  mRNA = mRNA_matrix,
  miRNA = miRNA_matrix,
  methylation = methylation_matrix
)

# Run SNF clustering
result <- run_snf(data_list, n_clusters = 3)

# Or use the unified interface
result <- run_integration(data_list, algorithm = "SNF", n_clusters = 3)

# Compare multiple algorithms
algorithms <- c("SNF", "RGCCA", "CIMLR", "MOFA")
results <- lapply(algorithms, function(alg) {
  run_integration(data_list, algorithm = alg, n_clusters = 3)
})
names(results) <- algorithms

# Evaluate clustering consistency
ari_matrix <- compare_clusterings(results)

Whole-slide pathology data

MOFSR does not read .svs, .ndpi, .scn, or .mrxs pixels directly. Extract slide-level numeric measurements or embeddings first, then supply a features × samples matrix as the pathology modality. The WSI to MOFSR workflow gives a reproducible QuPath export, aggregation, quality-control, and sample-alignment recipe.

Supported Algorithms

Algorithm Reference Year
SNF Wang et al., Nature Methods 2014
CIMLR Ramazzotti et al., Nature Communications 2018
iClusterBayes Mo et al., Biostatistics 2018
IntNMF Chalise & Fridley, PLoS ONE 2017
RGCCA/SGCCA Tenenhaus & Tenenhaus, Psychometrika 2011
NEMO Rappoport & Shamir, Bioinformatics 2019
PINSPlus Nguyen et al., Genome Research 2017
MCIA Meng et al., BMC Bioinformatics 2014
LRAcluster Wu et al., Cancer Informatics 2015
BCC Lock & Dunson, Bioinformatics 2013

Data Preprocessing

# Normalize data
data_norm <- normalize_omics(data_list, method = "zscore")

# Filter low-variance features
data_filtered <- filter_low_variance(data_list, min_var = 0.01)

# Handle missing values
data_imputed <- handle_missing(data_list, method = "knn", k = 5)

# Batch correction
data_corrected <- correct_batch(data_list, batch = batch_labels)

# Quality control summary
qc_report <- qc_summary(data_list)

Visualization

# UMAP visualization
umap_coords <- compute_umap(data_list)
plot_umap(umap_coords, result$Cluster)

# Consensus matrix heatmap
cc_result <- RunCC(data_list[[1]], maxK = 6)
plot_consensus_heatmap(cc_result[[3]]$consensusMatrix)

# Silhouette analysis
plot_silhouette(result$Cluster, dist(t(data_list[[1]])))

# Survival analysis (requires survival data)
plot_survival(time, event, result$Cluster)

Parallel Computing

library(future)
plan(multisession, workers = 4)

# Parallel consensus clustering
result <- parallel_consensus_cluster(data, max_k = 6, n_reps = 1000)

# Parallel feature selection
features <- parallel_bootstrap_features(data, n_bootstrap = 100)

System Requirements

All 15 clustering algorithms are implemented internally without external dependencies, ensuring reproducibility across different computing environments.

Citation

If you use MOFSR in your research, please cite:

Liu Z (2024). MOFSR: Multi-Omics Fusion for Subtype Recognition. 
R package version 2.3.0, https://github.com/Zaoqu-Liu/MOFSR

Related Publications

The algorithms implemented in MOFSR are based on peer-reviewed publications. Please also cite the original algorithm papers when using specific methods.

Author

Zaoqu Liu

License

GPL-3.0