Multi-Omics Integration
A single omics layer answers one question. Which mutations a patient carries, which genes are transcribed, which CpG sites are methylated, how the cells respond to a panel of drugs. Each is one slice. The biology that matters usually sits in the relationships between the slices, and integration is where you go looking for it.
This section takes four established integration methods and runs each one on the same cancer cohort, so the difference you see on the page is the difference between the methods, not between datasets. Every figure comes from a real run in one pinned container.
Why one layer is not enough
Section titled “Why one layer is not enough”A mutation may or may not change expression. Higher mRNA does not always mean more protein. A methylation change can silence a gene that no mutation touched. When you look at one layer you see one of these effects and miss the others. Integration lets a signal in one layer corroborate, or complicate, a signal in another.
Three ways to combine layers
Section titled “Three ways to combine layers”There are three broad strategies, and the methods in this section are all the middle one.
Early integration concatenates every layer into one wide matrix and runs a standard analysis, PCA or clustering, on the stack. It is simple and it throws away structure. Expression values and binary mutation calls live on different scales, so without careful normalization one layer drowns the rest.
Intermediate integration finds shared factors, networks, or ordinations that respect each layer’s own structure while capturing what the layers have in common. MOFA, SNF, DIABLO, and MCIA all live here. This is the approach that earns its keep on real studies.
Late integration analyzes each layer on its own, then reconciles the results. Differential expression on the RNA, differential methylation on the array, then look for genes that surface in both lists. Easy to run, blind to patterns that appear only when the layers are seen together.
The running example: CLL
Section titled “The running example: CLL”Every method page uses one cohort, from Dietrich et al. (2018): 200 chronic lymphocytic leukemia patients profiled across four layers.
| Layer | Features | What it measures |
|---|---|---|
| Drug response | 310 | Ex vivo viability across a drug panel |
| Methylation | 4248 | DNA methylation, 450K array |
| mRNA | 5000 | Gene expression, RNA-seq |
| Mutations | 69 | Recurrent somatic mutations |
The data ships as CLL_data in the Bioconductor MOFAdata package, so no file is
downloaded by hand. The dominant biological signal is IGHV mutation status, which
splits CLL into two subtypes with different clinical courses. Every method here
recovers that split from the data alone, which is exactly what makes the cohort a good
test: you know the answer the method should find, so you can judge how it finds it.
The four methods
Section titled “The four methods”| Method | Type | The question it answers | What it returns |
|---|---|---|---|
| MOFA | unsupervised factor analysis | what are the main axes of variation across the layers | latent factors and a weight for every feature |
| SNF | unsupervised network fusion | which patients group together once all layers are combined | patient subtypes from a fused similarity network |
| DIABLO | supervised sparse PLS-DA | which features best separate a known class | a small biomarker panel per layer |
| MCIA | unsupervised ordination | do the layers share a common structure | a shared sample space and feature loadings |
Read Choosing a method first if you are picking one for a study of your own. Read Comparing the four methods on CLL after the method pages to see where they agree and where they part ways.
R first
Section titled “R first”Integration is an R-dominated corner of bioinformatics. mixOmics (DIABLO),
omicade4 (MCIA), and SNFtool (SNF) have no mainstream Python implementation, so
those pages are R only. MOFA is the exception: it trains through a Python backend and
has a real Python inspection path, so the MOFA page carries both languages. The
runnable scripts and the single container that produces every figure live in the
companion code repo under guides/multi-omics/.