When trying to use MultiVI with a MuData object containing unpaired observations (cells missing from some modalities), scvi-tools now raises:
ValueError: Detected unpaired observations in modality rna. Please make sure that data is fully paired in all MuData inputs. Either pad the unpaired modalities or take the intersection with muon.pp.intersect_obs().
This is surprising, as MultiVI is designed to handle missing modalities during modeling, yet the data validation enforces fully paired MuData objects.
Relevant code:
# Prepare a MuData with unpaired observations
# This used to run (<=2024), but now fails immediately after upgrade
# ...
import muon as mu
# mdata: MuData with unpaired cells between rna & atac modalities
...
# Setup for MultiVI:
from scvi.model import MULTIVI
MULTIVI.setup_mudata(mdata)
# Exception raised here
When trying to use MultiVI with a MuData object containing unpaired observations (cells missing from some modalities), scvi-tools now raises:
This is surprising, as MultiVI is designed to handle missing modalities during modeling, yet the data validation enforces fully paired MuData objects.
Relevant code:
src/scvi/data/_manager.py: validates MuData via_check_mudata_fully_pairedsrc/scvi/data/_utils.py: raises error if any modality is structurally unpaired1a2d127c1f7e364e21ea92e92c99ee844016a114("fix: AttributeError after rich upgrade and MultiVI errors after Mudata upgrade (fix: AttributeError after rich upgrade and MultiVI errors after Mudata upgrade #3776)")