dance
dance copied to clipboard
Unifying base data object
Currently, there are several different dataset objects specialized for each task and model (e.g., CellTypeDataset
, ClusteringDataset
), each of them takes a variety of specialized arguments that are not directly related to the underlying data, e.g., save path, processing scheme, choice of tissue. This complexity makes it quite hard to maintain the code base and implement new methods/datasets.
To improve this situation, we need to isolate raw dataset objects from transformation/processing methods.
- Base data object
- Take
AnnData
as an input and save it as a private attribute (read-only?). - Construct data loaders that load g, x, y, etc., to be passed to the model for training/evaluation.
- Take
- Dataset object
- Download option
- Transformation option
- Dataset from paper (preprocessed) -> used to benchmark the reproducibility of the reimplemented model
- Transformation
- Leverage functionalities from
scanpy
(recall that now the base data object store anAnnData
object as a (private) attribute
- Leverage functionalities from
To fix
Single modality
- [x] examples/single_modality/clustering/scdsc.py (#95)
- [x] examples/single_modality/clustering/graphsc.py (#95)
- [x] examples/single_modality/clustering/scdcc.py (#95)
- [x] examples/single_modality/clustering/sctag.py (#95)
- [x] examples/single_modality/clustering/scdeepcluster.py (#95)
- [x] examples/single_modality/imputation/graphsci.py
- [x] examples/single_modality/imputation/deepimpute.py
- [ ] examples/single_modality/imputation/scgnn.py
- [x] examples/single_modality/cell_type_annotation/singlecellnet.py (#77)
- [x] examples/single_modality/cell_type_annotation/celltypist.py (#72)
- [x] examples/single_modality/cell_type_annotation/scdeepsort.py (#75)
- [x] examples/single_modality/cell_type_annotation/actinn.py (#63)
- [x] examples/single_modality/cell_type_annotation/svm.py (#56, #57)
Spatial
- [x] examples/spatial/spatial_domain/stagate.py (#127)
- [x] examples/spatial/spatial_domain/louvain.py (#124)
- [x] examples/spatial/spatial_domain/stlearn.py (#126)
- [x] examples/spatial/spatial_domain/spagcn.py (#83)
- [x] examples/spatial/cell_type_deconvo/spotlight.py (#107)
- [x] examples/spatial/cell_type_deconvo/dstg.py (#103)
- [x] examples/spatial/cell_type_deconvo/card.py (#93)
- [x] examples/spatial/cell_type_deconvo/spatialdecon.py (#94)
Multi modality
- [x] examples/multi_modality/joint_embedding/scmvae.py
- [x] examples/multi_modality/joint_embedding/dcca.py
- [ ] examples/multi_modality/joint_embedding/jae.py
- [ ] examples/multi_modality/joint_embedding/scmogcnv2.py
- [ ] examples/multi_modality/joint_embedding/scmogcn.py
- [x] examples/multi_modality/match_modality/cmae.py
- [x] examples/multi_modality/match_modality/scmm.py
- [ ] examples/multi_modality/match_modality/scmogcn.py
- [x] examples/multi_modality/predict_modality/babel.py (#89)
- [x] examples/multi_modality/predict_modality/cmae.py
- [x] examples/multi_modality/predict_modality/scmm.py
- [ ] examples/multi_modality/predict_modality/scmogcn.py