-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MuData API considerations #383
Comments
@gtca, would be great to get your input on this! |
Hey! I'll try to briefly comment on this below (and I'm happy to catch up later to discuss it further).
The way it is addressed in
I would say
I think For the last point in the original post, I think the proposed solution is a reasonable one. Exciting to see this taking shape! |
Description of feature
In the course of implementing the new data structure (#327), I plan to make MuData the default way
of interacting with paired single-cell gene expression/AIRR data.
I'm thinking about how the API should be adapted for this.
Data structure recap
We are talking about a MuData object that looks like this:
The
gex
modality contains the gene expression data, theairr
modaility thereceptor data. The
airr
modality has no.X
, the relevant data are stored in.obsm
.airr
modality.airr
andgex
data.airr.obs
on top ofgex
embeddings, or use columns from bothgex.obs
andairr.obs
in a single plot.Since the
airr
modality only hasobs
andobsm
, it would be thinkable to(additionally) support the use of a single
AnnData
object with gene expression datain.X
and receptor data in.obsm
.API consideration for unimodal data
(i.e. scirpy functions that only use the
airr
modality)1. For a function that only operates on the AIRR data, what is the preferred option to interact with mudata?
or
2. Should a function that only operates on the AIRR data add columns to
mdata
oradata
?3. Use muon for plotting or scanpy?
Is it preferable to call
or
If the former, is there a recommended way to transfer
.obsm
from the GEX AnnData to MuData (similar toupdate_obs
for.obs
)?API considerations for multimodal data
(i.e. functions that consume both the
airr
andgex
modalities)I have a function that depends on a gene expression neighborhood graph and
.obs
annotations based on AIRR data.API options
Possible solution
I'm leaning towards having all functions operate on
MuData
directly,i.e.
with the option to also pass an anndata object for backwards-compatibility (in that case,
airr_key
will be ignored).The text was updated successfully, but these errors were encountered: